ClassFormatError:在调用@Test方法之前,JUnit测试类运行会导致PC无效错误

时间:2018-02-12 13:44:10

标签: java junit mockito powermock powermockito

运行测试类时出现的错误

java.lang.ClassFormatError: JVMCFRE013 local variable PC length invalid; class=com/../MyClass, offset=42431
    at java.lang.ClassLoader.defineClass(ClassLoader.java:265)

当我将MyClass.class添加到课程上方的@PrepareForTest时,会发生这种情况。当我删除它时,错误就会消失。 我并不认为这是一个eclpise / java问题,因为我尝试过将Java 1.8转换为1.6。请帮助我。

@RunWith(PowerMockRunner.class)
@PowerMockIgnore("javax.*")
@PrepareOnlyThisForTest({x.class,MyClass.class })
@SuppressStaticInitializationFor("com.xx")
public class MyClassTest {

这是我执行的测试类,导致错误。

1 个答案:

答案 0 :(得分:0)

问题与主类或测试类的长度无关。 正在使用的JavaAssist版本相对较旧。 javassist-3.11.x.jar我将其更新为最新版本,问题已解决。