tomcat5无法在CentOS 5上启动,并带有NoClassDefFoundError异常

时间:2020-03-05 18:53:20  来源:igfitidea点击:

即使我从WEBAPPS目录中删除了所有应用程序,Tomcat也无法启动,就像操作系统安装后一样,一切都剩下了。

日志(catalina.out)说:

Using CATALINA_BASE:   /usr/share/tomcat5
Using CATALINA_HOME:   /usr/share/tomcat5
Using CATALINA_TMPDIR: /usr/share/tomcat5/temp
Using JRE_HOME:       
Created MBeanServer with ID: -dpv07y:fl4s82vl.0:hydrogenium.timberlinecolorado.com:1
java.lang.NoClassDefFoundError: org.apache.catalina.core.StandardService
   at java.lang.Class.initializeClass(libgcj.so.7rh)
   at java.lang.Class.initializeClass(libgcj.so.7rh)
   at java.lang.Class.initializeClass(libgcj.so.7rh)
   at java.lang.Class.newInstance(libgcj.so.7rh)
   at org.apache.catalina.startup.Bootstrap.init(bootstrap.jar.so)
   at org.apache.catalina.startup.Bootstrap.main(bootstrap.jar.so)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.modeler.Registry not found in org.apache.catalina.loader.StandardClassLoader{urls=[file:/var/lib/tomcat5/server/classes/,file:/usr/share/java/tomcat5/catalina-cluster-5.5.23.jar,file:/usr/share/java/tomcat5/catalina-storeconfig-5.5.23.jar,file:/usr/share/java/tomcat5/catalina-optional-5.5.23.jar,file:/usr/share/java/tomcat5/tomcat-coyote-5.5.23.jar,file:/usr/share/java/tomcat5/tomcat-jkstatus-ant-5.5.23.jar,file:/usr/share/java/tomcat5/tomcat-ajp-5.5.23.jar,file:/usr/share/java/tomcat5/servlets-default-5.5.23.jar,file:/usr/share/java/tomcat5/servlets-invoker-5.5.23.jar,file:/usr/share/java/tomcat5/catalina-ant-jmx-5.5.23.jar,file:/usr/share/java/tomcat5/tomcat-http-5.5.23.jar,file:/usr/share/java/tomcat5/tomcat-util-5.5.23.jar,file:/usr/share/java/tomcat5/tomcat-apr-5.5.23.jar,file:/usr/share/eclipse/plugins/org.eclipse.jdt.core_3.2.1.v_677_R32x.jar,file:/usr/share/java/tomcat5/servlets-webdav-5.5.23.jar,file:/usr/share/java/tomcat5/catalina-5.5.23.jar], parent=org.apache.catalina.loader.StandardClassLoader{urls=[file:/var/lib/tomcat5/common/classes/,file:/var/lib/tomcat5/common/i18n/tomcat-i18n-ja.jar,file:/var/lib/tomcat5/common/i18n/tomcat-i18n-fr.jar,file:/var/lib/tomcat5/common/i18n/tomcat-i18n-en.jar,file:/var/lib/tomcat5/common/i18n/tomcat-i18n-es.jar,file:/usr/share/java/tomcat5/naming-resources-5.5.23.jar,file:/usr/share/eclipse/plugins/org.eclipse.jdt.core_3.2.1.v_677_R32x.jar,file:/usr/share/java/tomcat5/naming-factory-5.5.23.jar], parent=gnu.gcj.runtime.SystemClassLoader{urls=[file:/usr/lib/jvm/java/lib/tools.jar,file:/usr/share/tomcat5/bin/bootstrap.jar,file:/usr/share/tomcat5/bin/commons-logging-api.jar,file:/usr/share/java/mx4j/mx4j-impl.jar,file:/usr/share/java/mx4j/mx4j-jmx.jar], parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}}}
   at java.net.URLClassLoader.findClass(libgcj.so.7rh)
   at java.lang.ClassLoader.loadClass(libgcj.so.7rh)
   at java.lang.ClassLoader.loadClass(libgcj.so.7rh)
   at java.lang.Class.initializeClass(libgcj.so.7rh)
   ...5 more

解决方案

回答

对我来说,这是上课的尖叫声。tomcat确切安装在哪里? (向我们提供主目录所在位置的命令行打印输出。)此外,我们如何启动它?

回答

检查JAVA_HOME / JRE_HOME设置。我们可能要使用另一种JVM,而不是与操作系统一起安装的JVM。

回答

似乎我们已经实现了JMX服务,并试图将其安装在server.xml文件中,但是忘记将apache commons建模器jar添加到server / lib目录(因此org.apache.commons.modeler.Registry的ClassNotFoundException) 。检查server.xml文件中是否有可能添加的内容,然后尝试将正确的jar文件添加到服务器类路径中。

回答

似乎我们需要将commons-modeler的jar放入$ CATALINA_HOME / common / lib。如果未将驱动程序的jar文件放入tomcat的服务器类路径中,则尝试设置JDBC数据源时会遇到相同类型的错误。