开发者社区> 问答> 正文

Tomcat无法启动,报错问题

前面一段时间看到 Tomcat7.0 发布了几个测试版,由于没有稳定,也就没有测试了,今天看到新闻,看到 Tomcat7.0 正式版已经发布了,到官网上下载下来,看看效果如何。 < XMLNAMESPACE PREFIX ="O" />
下面列出Tomcat 7的一些新特性介绍:
◆Tomcat 7完全支持Servlet 3.0规范
◆Tomcat 7新增了对Java注释的支持
◆Tomcat 7通过web.xml动态配置引用类库的功能
◆Tomcat 7改进了安全回话的跟踪
◆Tomcat 7改进了关系服务时候的功能,让关闭时的地址可以配置
◆Tomcat 7改进了启动类,目前Tomcat 7启动过程无须任何配置文件
◆Tomcat 7新增了配置参数,可以配置Tomcat 7的执行队列超时时间,和执行大大小限制
… …
新特性带来的是方便和更好地支持Java新特性。感觉Tomcat7 对Servlet3.0的支持和Java Annotaion的支持是应现在流行0配置或尽量减少配置文件的需要,Servlet3.0 的到来,感觉最深地是带来直接在code level 直接Annotation即可配置一个Servlet,并不需要以前的在web.xml下配置了。

下载Tomcat7.0后,和MyEclipse进行整合,MyEclipse配置Tomcat7.0如下图
1
发现在启动的时候报了一个错误
java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory

at org.apache.catalina.startup.Bootstrap.<clinit>(Bootstrap.java:55)

Caused by: java.lang.ClassNotFoundException: org.apache.juli.logging.LogFactory

at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
... 1 more

Exception in thread "main"
2
到网上搜索了一下,比较好解决,有个网址http://mianniu.com/programming-world/java-lang-noclassdeffounderror-orgapachejulilogginglogfactory-at-org-apache-catalina-startup-bootstrap上说

`Solutions

  1. In Eclipse, Open the “Server” tab.
  2. Double click on the “Tomcat6″ entry to see the configuration.
  3. Then click on the “Open launch configuration” link in the “General information” block.
  4. In the dialog, select the “Classpath” tab.
  5. Click the “Add external jar” button.
  6. Select the file “/usr/share/tomcat6/bin/tomcat-juli.jar”
  7. Close the dialog.
  8. Start tomcat 6 from Eclipse.`

实际上,就是把bin/tomcat-juli.jar 下add tomcat classpath下,效果如下:
3
重新启动Tomcat7.0,发现启动成功。

展开
收起
落地花开啦 2016-03-23 14:23:38 2592 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    我的原来用的是单独的tomcat 6.0.20,但是由于我系统上安装了php的集成开发环境xampp,里面有集成的tomcat,我就想看看是不是能在MyEclipse中直接用集成的tomcat,就试了试,换了之后在MyEclipse中启动tomcat时就报了以下错误,与上面不同的是第二句话:
    at org.apache.catalina.startup.Bootstrap.<clinit>(Bootstrap.java:60),但是解决方案是一样的,当选择classPath时选择了集成环境中的,再次用MyEclipse启动tomcat就可以正常启动了,但是在xampp的管理面板中,tomcat显示未启动。

    2019-07-17 19:10:59
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Apache Tomcat 的云原生演进 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载