On 12/04/2016 12:36 AM, Alan Bateman wrote:
On 04/12/2016 00:07, Remi Forax wrote:
Hi all, hi Jon,
while updating ASM6 to the new classfile format, i think i've found a
bug in javap.
javap as no trouble to read module-info.class if the class is
specified directly
$ /usr/jdk/jdk-9-jigsaw/bin/javap module-info.class
open module com.google.guava {
requires java.base;
requires java.logging;
requires java.annotations.common;
requires jdk.unsupported;
exports com.google.common.io;
...
}
but if the module-info.class is in a (modular) jar,
/usr/jdk/jdk-9-jigsaw/bin/javap --module-path deps -m
com.google.guava module-info
Error: error while reading constant pool for module-info: invalid
index #0
I've created JDK-8170708 to track this.
-Alan.
There are three issues here:
1. Accessing module-info.class in a .jar file
It may be extreme, javap will accept URLs, including jar: URLs, as
a way of referencing any .class
file in a .jar file.
2. Better handling of "this_class 0"
3. How to identify the module declaration on the javap command line.
i.e. should javap be changed
to special case the name module-info?
-- Jon