`
hwfly
  • 浏览: 27110 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

Bad version number in .class file引发的问题

    博客分类:
  • java
 
阅读更多
上午学习了下flex的基础知识。下午就开始搭建项目环境。
svn没有权限,只有用优盘拷贝项目文件了。拷贝,导入工程,用了我快半个小时。
自此开始了我下午的惨痛经历。
导入项目到myeclipse,拷贝的工程。很多红叉叉,几分钟搞定之后。发布到tomcat—》启动
各种debug弹出来。

Resume N次过后。启动完毕。
Ie中访问工程,登录框出来了。输入用户名密码,点击登录。出现如下问题
 [05-21 18:07:56.296 INFO  SystemProperties.<init>():30] Loaded file:/D:/work%20pro/apache-tomcat-5.5.20/webapps/TINMS/WEB-INF/classes/metar-security.properties
[05-21 18:07:56.531 ERROR DispatchAction.dispatchMethod():297] Dispatch[/login] to method 'login' returned an exception
java.lang.reflect.InvocationTargetException
	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.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:274)
	at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:194)
	at org.springframework.web.struts.DelegatingActionProxy.execute(DelegatingActionProxy.java:106)
	at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
	at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:75)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.UnsupportedClassVersionError: Bad version number in .class file
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(Unknown Source)
	at java.security.SecureClassLoader.defineClass(Unknown Source)
	at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1815)
	at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:869)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1322)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1201)
	at java.lang.ClassLoader.loadClassInternal(Unknown Source)
	at com.metarnet.security.manager.UserManager.getOnlineUserIDList(UserManager.java:533)
	at com.qtby.tinms.login.service.LoginManager.CheckUser(LoginManager.java:54)
	at com.qtby.tinms.login.action.LoginAction.login(LoginAction.java:123)
	... 31 more
[05-21 18:07:56.546 WARN  RequestProcessor.processException():516] Unhandled Exception thrown: class javax.servlet.ServletException
[05-21 18:07:56.546 ERROR StandardWrapperValve.invoke():253] Servlet.service() for servlet action threw exception
java.lang.UnsupportedClassVersionError: Bad version number in .class file
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(Unknown Source)
	at java.security.SecureClassLoader.defineClass(Unknown Source)
	at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1815)
	at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:869)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1322)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1201)
	at java.lang.ClassLoader.loadClassInternal(Unknown Source)
	at com.metarnet.security.manager.UserManager.getOnlineUserIDList(UserManager.java:533)
	at com.qtby.tinms.login.service.LoginManager.CheckUser(LoginManager.java:54)
	at com.qtby.tinms.login.action.LoginAction.login(LoginAction.java:123)
	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.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:274)
	at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:194)
	at org.springframework.web.struts.DelegatingActionProxy.execute(DelegatingActionProxy.java:106)
	at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
	at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:75)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
	at java.lang.Thread.run(Unknown Source)


java.lang.UnsupportedClassVersionError: Bad version number in .class file

错误的jdk版本。
好了,想办法解决把。我的jdk是1.6的而Compiler Compliance level默认是5.0
进到当前工程的属性后,选择"Java Compiler"进去后将"Compiler Compliance level"改成当前jdk的版本
确定,开始rebuilding。



此过程大概需要10分钟。(当中开了一个Flash Builder机器慢的快马赛克了,果断关掉还是用了10分钟,很郁闷)
然后,再启动tomcat。



到这就没了。这不比没改版本之前更糟吗!?果断,删除tomcat 的work,删除webapps下的工程。重新发布(发布也得10分钟),问题依然如此。
好吧,删除工程,重复以上操作一次。结果还是这样。
从svn上下载工程,再重复以上操作一次。还是这样。
继续百度,无意间看到了http://sucre.blog.51cto.com/1084905/353608
原来我的tomcat默认的一直都是myeclipse的jre包。而不是自己配置的jdk1.6



选上jdk1.6.重启,一切正常。
这个问题卡了我一下午。
总结:项目jdk版本与以下三个地方决定
1.Window ->Preferences ->Java ->compiler中的compiler compliance level对应的下拉菜单中选择JDK6.0版本(之前是5.0)
2.Window -> Preferences ->Java ->Installed JRES选择安装的jdk1.6,(之前是MyEclipse6.5,相当于5.0)(注意不要选jre)
3.Window -> Preferences ->MyEclipse -> Servers ->Tomcat -> Tomcat 5.x -->JDK中的Tomcat JDK name选择与步骤2相同
在我选择compiler compliance level为6.0时,因为tomcat默认的是MyEclipse6.5(相当于5.0),所以还没有加载工程时就会报错。
如果早一点查资料,不用自己一股脑的删除,重启,很快就能解决问题。还是没有找到问题出在哪。
详细的可以看这里:http://hellosure.iteye.com/blog/868729
  • 大小: 59.1 KB
  • 大小: 42.7 KB
  • 大小: 31.1 KB
  • 大小: 33.7 KB
分享到:
评论

相关推荐

    java.lang.UnsupportedClassVersionError Bad version number in .class file异常的解决办法

    在MyEclipse中运行一个小应用程序或者在编辑一些程序时,出现java.lang.UnsupportedClassVersionError Bad version number in .class file异常,的解决办法!

    Bad version number in .class file 错误

    NULL 博文链接:https://happypigs.iteye.com/blog/675096

    Flash Builder 4 正式版中 解决使用LCDS ES2 Data/Services 出现 Bad version number in .class file 问题

    这两天遇到了一个问题,原来使用的是FB 4 Bata 2中没有遇到的问题,在FB 4中遇到了,就是在使用Data/Services...Bad version number in .class file 问题,现在知道怎样一回事了,希望能帮更多人解决这方面的困扰。

    tomcat:bad version number in class file的解决方法

    tomcat:bad version number in class file的解决方法

    AXMLPrinter2、baksmali、smali、dex2jar

    number in .class file at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(Unknown Source) at java.security.SecureClassLoader.defineClass(Unknown Source) at ...

    scraper-one:第一个仅使用 Java 的刮刀项目

    我花了一整天来解决这个问题:( jdk 1.7.0_51 上的 UTC+3 不正确使用 bash 运行 scraper-1.0-SNAPSHOT.jar 时遇到 java.lang.UnsupportedClassVersionError: Bad version number in .class file。 在 Windows 上使用...

    JBOSS5+JDK6+myeclipse8.6搭建EJB3环境-已成功

    1.安装JDK1.6并配置环境变量 2.下载JBOSS,将下载的安装包直接解压到安装...注意:当我安装JDK1.5+JBOSSjboss-5.1.0.GA组合时,报版本冲突错误(Bad version number in .class file错误),我换成JDK1.6就不报错误了。

    Java 免费给手机发飞信

    一 java.lang.UnsupportedClassVersionError: Bad version number in .class file 必须使用jdk 1.6 二 Exception in thread "main" java.lang.RuntimeException: Your license has expired. Please registe ...,...

    servlet2.4doc

    getAttribute(String) - Method in class javax.servlet.ServletRequestWrapper The default behavior of this method is to call getAttribute(String name) on the wrapped request object. getAttribute(String...

    BobBuilder_app

    In this version I have done away with the b+tree and hash index in favor of my own MGIndex structure which for all intents and purposes is superior and the performance numbers speak for themselves....

    php.ini-development

    development version only in development environments as errors shown to ; application users can inadvertently leak otherwise secure information. ; This is php.ini-development INI file. ;;;;;;;;;;;;...

    Delphi7.1 Update

    visit the Borland Registered User web site to obtain a localized readme file that may contain important late- breaking information not included in this readme file.IMPORTANT: Delphi must be closed ...

    Sakemail

    :)26/3/981.6.1- Added a FUNCFileName private variable to manage the complete path of the attached file. I receive problems reports with this, it work now ?.- Reduced the line sleep to 30 (tell me if ...

    微软内部资料-SQL性能优化2

    Those pages may however have to be faulted in from a page file or memory mapped file. Backing Store Backing store is the physical representation of a memory address. Page Fault (Soft/Hard) A ...

    Bochs - The cross platform IA-32 (x86) emulator

    class, optional commit support on Bochs exit, save/restore file attributes, 1.44 MB floppy support, set file modification date/time - converted the complete hdimage stuff to the new 'hdimage' ...

    微软内部资料-SQL性能优化3

    If the class is not confident in their understanding, review appendix A04_Locking and its accompanying PowerPoint® file. Transactions in SQL Server provide the ACID properties: Atomicity A ...

    一个跨平台的CString源码

    // 2001-APR-27 - StreamLoad was calculating the number of BYTES in one // case, not characters. Thanks to Pablo Presedo for this. // // 2001-FEB-23 - Replace() had a bug which caused infinite ...

    xplite_trial

    We currently distribute both an XPlite and 2000lite program as there are some advanced features coming in a future version that require we split them. XPlite/2000lite Professional is entirely self-...

    Rad Studio Delphi C++builder XE 10.4 Patch2

    This patch addresses a number of issues in RAD Studio 10.4, pertaining to Delphi Compiler, the RAD Studio IDE in general and the new LSP-based Code Insight in particular, plus C++ Builder Android ...

Global site tag (gtag.js) - Google Analytics