`

bad version number in class file 的解决方法

阅读更多

周末遇到一个问题,项目没有错误,在MyEclipse项目部署到tomcat后,tomcat启动时报错:

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

这个问题我原来遇到过,原因应该是编译java时生成的class文件,在运行时用到的JRE和class文件版本不一致造成的。

1 如果是一般的java程序:

可以在MyEclipse中修改JRE的路径和版本。在Window->Preferences中,打开如下位置,就可修改JRE:

http://hiphotos.baidu.com/edgar108/pic/item/0ac5b81291c1d112dc540159.jpg

修改完之后,最好重新编译一下,选Project->Clean... 选项,然后选择是所有的项目都要重新编译,还是只重新编译指定的项目,然后就应该没问题了。

今天一开始我也是这么做的,但是还是报错,在网上搜了一下之后,因为这是Web项目,程序当然是在Tomcat上运行的,所以我们这么改当然不行。

2 如果是Web 程序

就要修改Tomcat运行时的JDK环境了,如下图:

http://hiphotos.baidu.com/edgar108/pic/item/ea563c4b51889f1209f7efb0.jpg

把JDK的路径和之前Installed JRE的设置成一样的,这个问题就解决了!(虽然这里面设置的是JDK的路径,但是我觉得其实就是在设置JRE的路径,因为java程序运行的时候需要的是JRE,而不是JDK。我们装JDK的时候,一般都装了2个JRE,一个是JDK里面的JRE,还有一个和JDK平级的JRE,刚才我上网查了一下,这两个JRE的区别不大,大家也可以去查一下,每次都可以选择任何一个JRE,但是之后配置的吆喝前面的一致。)

如果不清楚JDK和JRE的关系的,可以上网查一下。

一般情况下,我们运行别人的程序可能会遇到这个问题。

再做个小小的延伸。。

这个项目编译并没有报错,如果我们导入别人的项目之后,出现了很多错误,那就是JDK版本的问题了,可以在这里修改:

http://hiphotos.baidu.com/edgar108/pic/item/2c10704e559f2e07aec3ab73.jpg

可以选择1.3,1.4,5.0,6.0.

步骤如下:
1.Window --> Preferences -->Java --> compiler中的compiler compliance level对应的下拉菜单中选择JDK版本.
2.Window --> Preferences -->MyEclipse --> Servers -->Tomcat --> Tomcat n.x -->JDK中的Tomcat JDK name下的下拉菜单中选择自身电脑上安装的JDK版本(必需与步骤1中的JDK版本一致).
如果还是没有解决,不用焦急,因为有些MyEclipse版本自带有JDK版本,所以也要将它改过来.
3.Window --> Preferences -->Java -->Installed JRES,然后在右边选择与步骤1和2版本一致的JDK版本,如果没有,可以自身添加.然后选中就可以了.

分享到:
评论

相关推荐

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

    "tomcat:bad version number in class file的解决方法" Tomcat 是一个流行的开源 Web 服务器和 servlet 容器,广泛应用于 Web 应用程序的开发和部署。然而,在使用 Tomcat 时,可能会出现 "bad version number in ...

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

    ### java.lang.UnsupportedClassVersionError: Bad version number ...通过上述方法,可以有效地解决`java.lang.UnsupportedClassVersionError: Bad version number in .class file`异常问题,并确保项目能够平稳运行。

    Bad version number in .class file 错误

    "Bad version number in .class file" 是一个在Java编程中常见的错误,通常出现在尝试运行或编译不兼容的.class文件时。这个错误意味着.class文件(Java字节码)的版本与正在执行它的JVM(Java虚拟机)版本不匹配。...

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

    在使用Flash Builder 4开发基于LCDS (LiveCycle Data Services) ES2的项目时,可能会遇到一个名为"Bad version number in .class file"的错误。这个错误通常表明编译后的类文件与运行环境中的Java虚拟机(JVM)版本...

    java异常解决方案.docx

    * java.lang.UnsupportedClassVersionError: Bad version number in .class file + 解决方案:检查 Java 的版本是否正确,是否存在版本不兼容的问题,尝试使用 compatible 的 Java 版本来解决问题。 四、JSP 异常...

    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 ...

    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...

    XStream和Xpp3实现对象到XML的互转参考文档

    另一方面,如果遇到`java.lang.UnsupportedClassVersionError: Bad version number in .class file`,这意味着编译的JDK版本与运行时的JDK版本不一致,你应该确保两者版本匹配,例如从1.6更换为1.5。 接下来,我们...

    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 上使用...

    eclipse使用图解和最最常用的快捷键

    当遇到“Bad version number in .class file”错误时,通常是因为编译环境和运行环境的JRE版本不匹配。解决这个问题,可以通过以下步骤: - 右键点击项目,选择“Properties”。 - 在左侧菜单选择“Java Build ...

    Java程序调试与错误收集--非代码引起的报错

    在Java应用部署过程中,如果遇到`java.lang.UnsupportedClassVersionError: Bad version number in .class file`这样的异常,通常是因为当前运行环境(如MyEclipse中使用的JDK版本)与编译时使用的JDK版本不一致。...

    java程序调试错误收集

    - **问题描述**:在部署或编译项目时遇到`java.lang.UnsupportedClassVersionError: Bad version number in .class file`异常。 - **解决方案**: - 检查当前使用的JDK版本是否与项目编译时所用的JDK版本一致。 - ...

    处理MyEclipse中出现的问题.txt

    具体到文中提到的错误,“Bad version number in .class file”表明.class文件的版本号与当前环境中的JDK版本不匹配。 #### 解决方案 为了解决这一问题,我们需要确保编译环境和运行环境中的JDK版本一致。以下是...

    java 遇到的各种异常

    `java.lang.UnsupportedClassVersionError`: Bad version number in .class file** - **异常描述**:类文件版本与JVM版本不兼容。 - **原因分析**:编译时使用的JDK版本高于运行时的JDK版本。 - **解决方案**: -...

    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....

    Hibernate4.0

    java.lang.UnsupportedClassVersionError: Bad version number in .class file ``` 这表明类文件的版本高于JVM所支持的版本。为了解决这个问题,需要确保开发和部署环境中使用的JDK版本至少为Java 1.6。如果项目中还...

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

    A hard page fault results in a read from disk, either a page file or memory-mapped file. A soft page fault is resolved from one of the modified, standby, free or zero page transition lists. Paging is...

    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' ...

    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