Hi Remi,
Thanks for reporting this bug [1]. It has already been fixed, the fix
can be accessed at [2],
Thanks,
Vicente
[1] https://bugs.openjdk.java.net/browse/JDK-8159439
[2] http://hg.openjdk.java.net/jdk9/dev/langtools/rev/d213ecfb98b2
On 06/13/2016 01:03 PM, Remi Forax wrote:
Hi Jon,
i've got an exception trying to reference in a module-info.java some modular
jars generated by ASM,
i suppose there is a bug in the module-info generated by ASM but i'm not able
to find it (javap is ok with the code ?)
Given that this exception is thrown by javac, it's likely that you can also
harden the code of javac to avoid it. Again,
i suppose that the modular jars are rotten.
Here is the exception:
An exception has occurred in the compiler (9-ea). Please file a bug against the
Java compiler via the Java bug reporting page (http://bugreport.java.com) after
checking the Bug Database (http://bugs.java.com) for duplicates. Include your
program and the following diagnostic in your report. Thank you.
java.lang.NullPointerException
at
com.sun.tools.javac.code.Symtab.lookupPackage(jdk.compiler@9-ea/Symtab.java:622)
at
com.sun.tools.javac.code.Symtab.enterClass(jdk.compiler@9-ea/Symtab.java:685)
at
com.sun.tools.javac.jvm.ClassReader.enterClass(jdk.compiler@9-ea/ClassReader.java:2356)
at
com.sun.tools.javac.jvm.ClassReader.readClassOrType(jdk.compiler@9-ea/ClassReader.java:502)
at
com.sun.tools.javac.jvm.ClassReader.readPool(jdk.compiler@9-ea/ClassReader.java:432)
at
com.sun.tools.javac.jvm.ClassReader.readClassSymbol(jdk.compiler@9-ea/ClassReader.java:516)
at
com.sun.tools.javac.jvm.ClassReader.readClass(jdk.compiler@9-ea/ClassReader.java:2423)
at
com.sun.tools.javac.jvm.ClassReader.readClassBuffer(jdk.compiler@9-ea/ClassReader.java:2501)
at
com.sun.tools.javac.jvm.ClassReader.readClassFile(jdk.compiler@9-ea/ClassReader.java:2514)
at
com.sun.tools.javac.code.ClassFinder.fillIn(jdk.compiler@9-ea/ClassFinder.java:358)
at
com.sun.tools.javac.code.ModuleFinder$1.complete(jdk.compiler@9-ea/ModuleFinder.java:311)
at
com.sun.tools.javac.code.Symbol.complete(jdk.compiler@9-ea/Symbol.java:602)
at
com.sun.tools.javac.code.Symbol$ClassSymbol.complete(jdk.compiler@9-ea/Symbol.java:1219)
at
com.sun.tools.javac.comp.Modules$2.complete(jdk.compiler@9-ea/Modules.java:461)
at
com.sun.tools.javac.code.Symtab.lambda$enterModule$10(jdk.compiler@9-ea/Symtab.java:748)
at
com.sun.tools.javac.code.Symbol.complete(jdk.compiler@9-ea/Symbol.java:602)
at
com.sun.tools.javac.comp.Modules.computeTransitiveClosure(jdk.compiler@9-ea/Modules.java:926)
at
com.sun.tools.javac.comp.Modules.allModules(jdk.compiler@9-ea/Modules.java:889)
at
com.sun.tools.javac.comp.Modules.completeModule(jdk.compiler@9-ea/Modules.java:978)
at
com.sun.tools.javac.comp.Modules.access$000(jdk.compiler@9-ea/Modules.java:118)
at
com.sun.tools.javac.comp.Modules$3.complete(jdk.compiler@9-ea/Modules.java:536)
at
com.sun.tools.javac.code.Symbol.complete(jdk.compiler@9-ea/Symbol.java:602)
at
com.sun.tools.javac.comp.Modules.computeTransitiveClosure(jdk.compiler@9-ea/Modules.java:926)
at
com.sun.tools.javac.comp.Modules.allModules(jdk.compiler@9-ea/Modules.java:889)
at
com.sun.tools.javac.comp.Modules.enter(jdk.compiler@9-ea/Modules.java:214)
at
com.sun.tools.javac.main.JavaCompiler.initModules(jdk.compiler@9-ea/JavaCompiler.java:1020)
at
com.sun.tools.javac.main.JavaCompiler.initModules(jdk.compiler@9-ea/JavaCompiler.java:1012)
at
com.sun.tools.javac.main.JavaCompiler.compile(jdk.compiler@9-ea/JavaCompiler.java:906)
at
com.sun.tools.javac.main.Main.compile(jdk.compiler@9-ea/Main.java:280)
at
com.sun.tools.javac.main.Main.compile(jdk.compiler@9-ea/Main.java:144)
at com.sun.tools.javac.Main.compile(jdk.compiler@9-ea/Main.java:55)
at com.sun.tools.javac.Main.main(jdk.compiler@9-ea/Main.java:41)
Step to reproduce, download that jar
https://www.dropbox.com/s/3ieqah6wpawpsw0/jigsaw.zip?dl=0
and run:
javac -modulesourcepath src -d classes -modulepath mlib/
src/fr.umlv.asm.test/module-info.java
cheers,
RĂ©mi