`
zhuxinzx
  • 浏览: 293725 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

启动Tomcat不能加载Servlet的问题:Error deploying web application directory

阅读更多
今天,在启动Tomcat服务器的时候,突然发现不能load已经存在的Servlet类,而且提示java.lang.UnsupportedClassVersionError: Bad version number in .class file ,JDK版本号不支持问题,抛出异常,详细异常信息如下所示:

2009-8-3 12:35:54 org.apache.catalina.core.AprLifecycleListener init
信息: Loaded APR based Apache Tomcat Native library 1.1.16.
2009-8-3 12:35:54 org.apache.catalina.core.AprLifecycleListener init
信息: APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
2009-8-3 12:35:55 org.apache.coyote.http11.Http11AprProtocol init
信息: Initializing Coyote HTTP/1.1 on http-8080
2009-8-3 12:35:55 org.apache.coyote.ajp.AjpAprProtocol init
信息: Initializing Coyote AJP/1.3 on ajp-8009
2009-8-3 12:35:55 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 949 ms
2009-8-3 12:35:55 org.apache.catalina.core.StandardService start
信息: Starting service Catalina
2009-8-3 12:35:55 org.apache.catalina.core.StandardEngine start
信息: Starting Servlet Engine: Apache Tomcat/6.0.20
2009-8-3 12:35:56 org.apache.catalina.core.ApplicationContext log
信息: ContextListener: contextInitialized()
2009-8-3 12:35:56 org.apache.catalina.core.ApplicationContext log
信息: SessionListener: contextInitialized()
2009-8-3 12:35:56 org.apache.tomcat.util.modeler.Registry registerComponent
严重: Null component Catalina:type=JspMonitor,name=jsp,WebModule=//localhost/filter,J2EEApplication=none,J2EEServer=none
2009-8-3 12:35:56 org.apache.catalina.startup.HostConfig deployDirectory
严重: Error deploying web application directory filter
java.lang.UnsupportedClassVersionError: Bad version number in .class file (unable to load class org.shirdrn.action.FilterAction)
at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1854)
at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:890)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1354)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
at org.apache.catalina.startup.WebAnnotationSet.loadApplicationServletAnnotations(WebAnnotationSet.java:108)
at org.apache.catalina.startup.WebAnnotationSet.loadApplicationAnnotations(WebAnnotationSet.java:58)
at org.apache.catalina.startup.ContextConfig.applicationAnnotationsConfig(ContextConfig.java:297)
at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1068)
at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4339)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:526)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:987)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:909)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:495)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1206)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:314)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:722)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:516)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:583)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
2009-8-3 12:35:56 org.apache.coyote.http11.Http11AprProtocol start
信息: Starting Coyote HTTP/1.1 on http-8080
2009-8-3 12:35:56 org.apache.coyote.ajp.AjpAprProtocol start
信息: Starting Coyote AJP/1.3 on ajp-8009
2009-8-3 12:35:56 org.apache.catalina.startup.Catalina start
信息: Server startup in 1318 ms

因为原来一直是在MyEclipse 6.5上开发,昨天我重新安装了MyEclipse 7.1,在MyEclipse 7.1上。我猜想可能是MyEclipse 7.1版本比较新的原因,但是版本新导致不能加载Servlet这种可能不是很大,如果连加载类都成问题,那可不是一款优秀的IDE,起初我还是试着按照这种猜测去尝试,将在MyEclipse 6.5下最原始的备份重新导入MyEclipse 7.1,结果问题依然。

其实,异常已经显示了,WEB服务器启动的过程中抛出异常,也就说,可能的原因是某些对于WEB服务器直观重要的配置使其不能正常启动,最能想到的就是——Java虚拟机。因为异常java.lang.UnsupportedClassVersionError: Bad version number in .class file,可能是由于当前JDK版本不匹配造成的问题。

已经找到问题的根源,一步定位到Tomcat JDK的配置上去,能够解决问题的可能性最大。

下面是解决方法:

在MyEclipse 7.1中打开Preferences,定位到Servers服务器配置选项卡,如图所示:



一般MyEclipse 7.1默认的Tomcat JDK name是其自带的JDK 1.5,只需要添加一个当前在使用的版本的JDK,比如我的是JDK 1.6,然后再启动WEB服务器Tomcat,请求指定的Servlet,就能够成功加载Servlet类了。
分享到:
评论

相关推荐

    信息: Deploying web application directory lx01

    这个过程由Apache Tomcat服务器执行,一个流行的Java Servlet容器。然而,部署过程中遇到了问题,特别是与`blog`应用程序相关的错误。 错误发生在尝试配置应用程序监听器时,监听器类为`org.springframework.web....

    记一次Tomcat卡死在 Deploying web application 步骤的问题.doc

    在生产环境中部署web应用程序时,Tomcat卡死在Deploying web application步骤的问题是一个常见的问题。这个问题可能是由于多种原因引起的,包括但不限于securerandom.source[file:/dev/./urandom]没有指定、数据库...

    tomcat 环境配置及问题处理

    ### Tomcat环境配置详解及问题处理 #### 一、Tomcat简介 Apache Tomcat是一款开源的Servlet容器,它能够提供对Servlet和JavaServer Pages技术的支持,并且可以作为HTTP Web服务器来使用。通常用于开发和部署Web...

    tomcat-juli.jar,tomcat-juli-adapters.jar,log4j-1.2.17.jar tomcat 8日志输出

    {"time":"2017-09-06 10:24:48,356","logtype":"INFO","loginfo":"org.apache.catalina.startup.HostConfig:Deploying web application directory C:\Users\admin\Desktop\Tomcat8\webapps\docs"} {"time":"2017-09-...

    Microsoft Windows Net Server 2003 Deployment Resource Kit Designing And Deploying Directory And Security Services

    This resource provides detailed guidance on how to design and deploy directory services, including upgrading and restructuring domains, as well as designing and deploying directory services, and more.

    apache-tomcat-9.0.82.tar.gz

    注意:如果在使用Tomcat时出现了Error deploying web application directory web222,很大原因就是jdk和tomcat的版本不匹配。目前,jdk8不能匹配tomcat7.0,所以要降低jdk版本【换成JDK7】 目录的简单介绍 bin:启动...

    Tomcat 启动慢

    当在生产环境中部署Tomcat应用时,如果遇到长时间卡在“INFO: Deploying web application directory”的情况,这通常意味着Tomcat在部署Web应用的过程中遇到了某些瓶颈或问题,导致启动过程变得异常缓慢。...

    Deploying an application using Docker and Kubernetes

    Deploying an application using Docker and Kubernetes

    Deploying Java Web Start Applications on the JBoss Application Server

    为了充分利用Java Web Start提供的“版本控制”和“增量更新”等功能,我们需要一个支持Servlet或CGI脚本的Web服务器。本文将以JBoss 3.2.3应用服务器为例进行说明,该服务器内嵌了Apache Tomcat Web容器。 #### ...

    Tomcat The Definitive Guide, 2nd Edition(PDF)

    Tomcat: The Definitive Guide is a valuable reference for administrators and webmasters, a useful guide for programmers who want to use Tomcat as their web application server during development or in ...

    Deploying with JRuby: Deliver Scalable Web Apps using the JVM

    Deploying with JRuby: Deliver Scalable Web Apps using the JVM

    Tomcat6.0 web服务器

    Tomcat是目前比较流行的Web 应用服务器。 有两个办法可以在系统...这种context片断提供了一种便利的方法来部署web应用,不需要编辑server.xml,除非想改变缺省的部署特性,安装一个新的web应用时不需要重启动Tomcat。

    计算机组成原理(陈慧南)课后习题答案

    解答这些习题不仅有助于巩固理论知识,还能锻炼解决问题的能力,这对于计算机科学的学习者来说是极其宝贵的。 然而,仅仅依赖习题答案而不进行深入思考和自我实践,可能无法真正掌握这些知识。因此,尽管陈慧南老师...

    Understanding and Deploying LDAP Directory Services

    《理解与部署LDAP目录服务》是一本专注于介绍 Lightweight Directory Access Protocol (LDAP) 的技术书籍,旨在帮助读者深入理解和有效实施LDAP目录服务。LDAP是互联网上广泛使用的标准协议,用于访问和管理分布式...

    tomcat权威指南第二版.pdf

    3. 部署Servlet和JSP Web应用到Tomcat(第3章:Deploying Servlet and JSP Web Applications in Tomcat): - 讲解了Web应用的目录结构和部署方法,包括部署未打包的Web应用目录和WAR文件。 - 介绍了热部署(Hot ...

    tomcat配置技巧

    - **安装**:将Admin Web Application部署到Tomcat中,可以实现对Tomcat的远程管理和监控。 - **配置**:修改`CATALINA_BASE/webapps/admin.xml`文件来定义上下文参数,例如数据库连接、用户组等。 - **访问**:通过...

    Deploying NET Application LifeCycle Guides

    本篇文章将根据提供的文件信息,深入解析“Deploying .NET Application LifeCycle Guides”中提到的关键知识点,特别是关于.NET应用程序如何从开发计算机部署到测试环境,以及如何进一步部署到预发布服务器作为发布...

    tomcat8.0.33

    Apache Tomcat version 8.0 implements the Servlet 3.1 and JavaServer Pages 2.3 specifications from the Java Community Process, and includes many additional features that make it a useful platform for ...

    Beginning iOS Programming: Building and Deploying iOS Applications

    Beginning iOS Programming: Building and Deploying iOS Applications starts at the beginning—including an introduction to Objective C—and gives you the skills you need to get your apps up and running...

Global site tag (gtag.js) - Google Analytics