Bug#747027: emma does not work with Java 7 bytecode

Julian Andres Klode jak at debian.org
Sun May 4 20:16:51 UTC 2014


Package: libemma-java
Version: 2.0.5312+dfsg-4
Severity: grave

Running emma on bytecode generated by openjdk-7's javac fails, but it
works fine on Java code produced by openjdk 6. JDK 6 will not be part
of jessie.

$ cat Test.java 
public class Test {

    public static void main(String[] args) {}
}
$ /usr/lib/jvm/java-1.6.0-openjdk-amd64/bin/javac Test.java
$ java -jar /usr/share/java/emma.jar -cp . Test
EMMA: writing [txt] report to [<<DIR>>/coverage.txt] ...
$ rm Test.class 
$ javac Test.java
$ java -jar /usr/share/java/emma.jar -cp . Test
EMMA: no coverage data collected at runtime [all reports will be empty]
EMMA: writing [txt] report to [<<DIR>>/coverage.txt] ...
[EMMA v2.0, build 5312debian]
emmarun: [MAIN_METHOD_NOT_FOUND] application class [Test] does not have a runnable public main() method
Exception in thread "main" com.vladium.emma.EMMARuntimeException: [MAIN_METHOD_NOT_FOUND] application class [Test] does not have a runnable public main() method
	at com.vladium.emma.rt.AppRunner._run(AppRunner.java:497)
	at com.vladium.emma.rt.AppRunner.run(AppRunner.java:97)
	at com.vladium.emma.runCommand.run(runCommand.java:247)
	at emmarun.main(emmarun.java:27)
Caused by: java.lang.VerifyError: Expecting a stackmap frame at branch target 11
Exception Details:
  Location:
    Test.<init>()V @4: ifnonnull
  Reason:
    Expected stackmap frame at this location.
  Bytecode:
    0000000: b200 1359 c700 0757 b800 1d03 324c 2ab7
    0000010: 0001 2b03 0454 b1                      

	at java.lang.Class.getDeclaredMethods0(Native Method)
	at java.lang.Class.privateGetDeclaredMethods(Class.java:2531)
	at java.lang.Class.getMethod0(Class.java:2774)
	at java.lang.Class.getMethod(Class.java:1663)
	at com.vladium.emma.rt.AppRunner._run(AppRunner.java:493)
	... 3 more


-- System Information:
Debian Release: jessie/sid
  APT prefers unstable
  APT policy: (980, 'unstable'), (500, 'unstable'), (100, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 3.13-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=de_DE.utf8, LC_CTYPE=de_DE.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages libemma-java depends on:
ii  openjdk-6-jre-headless [java2-runtime-headless]  6b30-1.13.2-2
ii  openjdk-7-jre-headless [java2-runtime-headless]  7u51-2.4.6-1

libemma-java recommends no packages.

libemma-java suggests no packages.

-- no debconf information

-- 
Julian Andres Klode  - Debian Developer, Ubuntu Member

See http://wiki.debian.org/JulianAndresKlode and http://jak-linux.org/.

Please do not top-post if possible.



More information about the pkg-java-maintainers mailing list