Hi,

The JDK 9 jar packager comes with 2 extra options: main-class and module-version. The first one is used in case of an executable modular jar, the latter is just for display/analysis to show which version of a specific module is used. To support these 2 values, the module-info.class must be adjusted (yes, the bytecode!).

It is not that hard to support this as well with a little help from ASM, but the question is: which plugin should do this: maven-jar-plugin or maven-shade-plugin? If you consider this kind of information to be part of the packaging process, maven-jar-plugin seems to be the best fit. However, if you consider this as a resource transformation, then maven-shade-plugin seems better.

Personally I think packaging should be quite a stupid action: making a jar from a set of files. And it should be very reliable, since it is part of the lifecycle of the most used packaging type. Of course you can control this when exposed as parameters...

Or should these extra (basic?) features require an extra setup of a maven-plugin so all transformations are done by one plugin only.

WDYT?
Robert

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
For additional commands, e-mail: dev-h...@maven.apache.org

Reply via email to