0

我已经在 Zulu openJDK 1.7.65 中执行了我的应用程序的测试用例,它抛出了 java.lang.Verify 错误。

现在我知道我们可以使用 -XX:UseSplitVerifier ot -noverify 来避免这种情况,但我不想这样做。

有趣的是,当我尝试使用 Zulu open JDK 1.7.45(较低版本)执行相同的测试用例时,验证错误消失了。

如何在较新版本的 zulu(即 1.7.65)中解决此错误。

干杯!!!

下面的异常跟踪,

java.lang.VerifyError: Bad <init> method call from inside of a branch
Exception Details:
  Location:
    com/example/it/xyz/policy/model/GroupStep.<init>(Lorg/powermock/core/IndicateReloadClass;)V @42: invokespecial
  Reason:
    Error exists in the bytecode
  Bytecode:
    0000000: 2a2b 4e4d 1300 4eb8 0018 04bd 000d 5903
    0000010: 2d53 1301 a5b8 0033 b800 373a 0519 05b2
    0000020: 0029 a500 0e2a 01c0 0039 b700 3ca7 000a
    0000030: 2c2d b700 3c01 57b1                    
  Stackmap Table:
    full_frame(@48,{UninitializedThis,Object[#57],UninitializedThis,Object[#57],Top,Object[#13]},{})
    full_frame(@55,{Object[#2],Object[#57],Object[#2],Object[#57],Top,Object[#13]},{})

    at java.lang.Class.getDeclaredConstructors0(Native Method)
    at java.lang.Class.privateGetDeclaredConstructors(Class.java:2532)
    at java.lang.Class.getDeclaredConstructors(Class.java:1901)
    at org.mockito.internal.creation.jmock.ClassImposterizer.setConstructorsAccessible(ClassImposterizer.java:75)
    at org.mockito.internal.creation.jmock.ClassImposterizer.imposterise(ClassImposterizer.java:70)
    at org.powermock.api.mockito.internal.mockcreation.MockCreator.createMethodInvocationControl(MockCreator.java:111)
    at org.powermock.api.mockito.internal.mockcreation.MockCreator.mock(MockCreator.java:60)
    at org.powermock.api.mockito.PowerMockito.mock(PowerMockito.java:143)
4

0 回答 0