Allow ModuleInfoExtender to be used externally
mandy chung
mandy.chung at oracle.com
Wed Aug 9 17:35:04 UTC 2017
On 8/9/17 7:39 AM, Oliver Siegmar wrote:
> Hello,
>
> I have to create a Java 9 modularized jar file programmatically.
>
> I noticed, that the compiled module-info.class file gets modified (main-class, module-version and modules-hash) by the jar command line tool (using jdk.internal.module.ModuleInfoExtender).
>
> Unfortunately, neither the ModuleInfoExtender itself nor the used asm-lib is exported to allow external use. Is it planned to change this in the final release of Java 9?
ModuleInfoExtender is JDK internal API and not planned to be
exported/opened. New version of ASM supports module-info.class. You can
probably try out ASM 6 alpha version for now.
>
> I think, it is a bit scary, that the binary version of module-info.class gets manipulated to create a jar file. Having to re-implement this functionality in 3rd party tools (like Ant, Maven, Gradle, etc.) doesn’t make it better ;-)
To be clear, the jar tool does not change Module attribute but it may
add optional attributes. I don't see how it can be scary to you.
Mandy
More information about the jigsaw-dev
mailing list