Jen*_*der 8 java junit version
我试图用1.5 JRE运行JUnit测试,但得到错误消息:
java.lang.UnsupportedClassVersionError: Bad version number in .class file
当我切换到JRE 1.6(实际上是一个JDK,但这不重要,对吗?)时,每件事都可以正常工作.
所以问题是:
几个类的抽查显示JUnit 4.8.2jar文件是用java 5编译的,或者是带有-target选项集的java 6编译器,这样就可以生成java5兼容的类文件.
一个更有可能的解释是你不小心编译了你想用Java 6 JDK运行的测试.什么:
javap -verbose -classpath YOUR_TOP_DIRECTORY com.yourname.YourTest
Run Code Online (Sandbox Code Playgroud)
在"主要版本"的输出顶部说?如果它说50,那么问题是你只编译了java 6的测试类.您需要使用JDK 5编译器或将选项传递-target 1.5给编译器.
JUnit 4.8.2的当前.jar文件是使用/ for Java 5编译的(类版本号为49.0).
我记得早期版本是用Java 6意外构建的(没有-target开关),但这只是一个错误.