The latter. New features in jdk7 require the use of the type-checking verifier -- which is what the cobertura instrumentation appears to be running afoul of.

--
- Keith

On Sep 13, 2011, at 4:57 PM, Frédéric Camblor wrote:

Alan,

Woudn't there any -XX JVM parameter, on jdk7, allowing to get back jdk6
strategy about stack map tables ?
Or maybe stack map tables _must_ be ok starting from jdk7 (due to class file
specifications for example) ?

Frédéric Camblor  <http://fcamblor.wordpress.com/>
<http://www.twitter.com/fcamblor>
Bordeaux JUG <http://bordeauxjug.org/> Board member
Jenkins <http://jenkins-ci.org/> community member & plugin commiter


2011/9/12 Frédéric Camblor <[email protected]>

Hi Alan,

Thanks for you reply, you helped me to point out problem was about
cobertura instrumentation which looks not compatible with Java 7

I'll raise an issue on this topic on their issue tracker :)

Frédéric Camblor <http://fcamblor.wordpress.com/> <http://www.twitter.com/fcamblor >
Bordeaux JUG <http://bordeauxjug.org/> Board member
Jenkins <http://jenkins-ci.org/> community member & plugin commiter


2011/9/12 Alan Bateman <[email protected]>

Frédéric Camblor wrote:

Hi everyone !

I just migrated to openjdk 7 on my project and, just after the upgrade,
most
of my unit test were in failure, throwing following exception :

java.lang.VerifyError: Expecting a stackmap frame at branch target 81 in method fr.fsh.bbeeg.common.config.**BBEEGConfiguration.<init>()V at
offset 44


When I go back to jdk 6, every tests are back to green :-)


Use od -x to look at the class file to see which class version it is. Class files >= version 51 are verified (exclusively) by the type checking verifier whereas with version 50 then if the verification fails it falls back to the old type inferencing verifier. If you have something modifying the class files then maybe it isn't updating the stack map tables and that would explain the error. For your jdk6 test runs then try running with
-XX:-FailOverToOldVerifier and see if fails too.

-Alan.




Reply via email to