0

我已按照本教程(http://www.mulesoft.com/tomcat-linux#.URj9weCy1Nh)使用以下环境变量在 debian wheezy 上安装 tomcat:

Using CATALINA_BASE:   /usr/local/apache-tomcat-7.0.35
Using CATALINA_HOME:   /usr/local/apache-tomcat-7.0.35
Using CATALINA_TMPDIR: /usr/local/apache-tomcat-7.0.35/temp
Using JRE_HOME:        /usr/lib/jvm/java-6-openjdk-amd64/jre
Using CLASSPATH:       /usr/local/apache-tomcat-7.0.35/bin/bootstrap.jar:/usr/local/apache-   tomcat-7.0.35/bin/tomcat-juli.jar

我给了 tomcat 用户一个 bash 登录名,当我运行 ./startup.sh 时没有任何反应,也没有打开端口。运行 version.sh 给了我:

 Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/catalina/util/ServerInfo
 Caused by: java.lang.ClassNotFoundException: org.apache.catalina.util.ServerInfo
    at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)

找不到主类:org.apache.catalina.util.ServerInfo。程序将会退出。

任何想法缺少什么?

4

1 回答 1

2
  • 安装完整,兼容JDK from Oracle (SUN) or IBM
  • JAVA_HOME环境变量设置为兼容 JDK 的根目录

$JAVA_HOME=/usr/java/jdk1.6.0_01

$export JAVA_HOME

  • 将兼容的 JDK 的 bin 目录放在PATH 环境变量的前面。

$ PATH=$JAVA_HOME/bin:$PATH

$ export PATH

  • 找到不兼容的 JDK 的 java 可执行文件,通常 /usr/bin/java并将其移开,如下所示:

$cd /usr/java

$mv java java.moved

  • 然后,检查以确保您的 java 可执行文件指向您已安装的 JDK:

$ which java

/usr/java/jdk1.6.0_01/bin/java

于 2013-02-11T14:49:10.187 回答