? ? 今天帮一个朋友在eclipse上运行一个仿真程序时,遇到“Bad version number in .class file”异常。意思是“错误的版本号”。我以前曾经遇到过类似的问题,这里重新整理一下。
? ? 这是由于在eclipse中编译Java程序时所用的JDK版本高于运行时所用的JRE版本所致。如编译用jdk1.6,而运行时的jre为1.5版本。在1.5的运行时环境版本上运行1.6的程序,当然不行。而反过来却可以,因为软件通常都有所谓的“向后兼容性”。
? ? 具体解决办法在eclipse中设置JDK的编译级别:Window-->Preference-->Java-->Compiler中,设置compiler compliance level(这里的5.0对应jdk1.5,6.0对应jdk1.6); 设置JRE版本:Window-->Preference-->Java,选择一个jre就行了(我的是D:\jdk1.6,这里使用的是该jdk中包含的jre)。只要保证前者(JDK)的版本号小于或等于后者(JRE)的版本号就可以了。