java.lang.VerifyError: Expecting a stackmap frame at branch target JDK 1.7 java.lang.VerifyError: Expecting a stackmap frame at branch target JDK 1.7 java java

java.lang.VerifyError: Expecting a stackmap frame at branch target JDK 1.7


Java 7 introduced stricter verification and changed the class format a bit—to contain a stack map used to verify that code is correct. The exception you see means that some method doesn't have a valid stack map.

Java version or bytecode instrumentation could both be to blame. Usually this means that a library used by the application generates invalid bytecode that doesn't pass the stricter verification. So nothing else than reporting it as a bug to the library can be done by the developer.

As a workaround you can add -noverify to the JVM arguments in order to disable verification. In Java 7 it was also possible to use -XX:-UseSplitVerifier to use the less strict verification method, but that option was removed in Java 8.


If you are using java 1.8, remove XX:-UseSplitVerifier and use -noverify in your JVM properties.


I ran into this problem and try using the flag -noverify which really works. It is because of the new bytecode verifier. So the flag should really work.I am using JDK 1.7.

Note: This would not work if you are using JDK 1.8