Automatic modules and jpackage

Alan Snyder javalists at cbfiddle.com
Mon Nov 20 18:50:16 UTC 2023


Adding core-iibs-dev…

This suggestion sounds useful to me.

I have considered modularizing one particular library, but have chosen not to, in part because of the issue raised here.

  Alan



> Begin forwarded message:
> 
> From: Mark Raynsford <jigsaw-dev at io7m.com>
> Date: November 11, 2023 at 1:18:21 PM PST
> To: jigsaw-dev at openjdk.org
> 
> Hello!
> 
> I have multiple applications that are modularized; all of the
> application modules are named modules and make heavy use of services.
> However, I do have many (transitive) dependencies that are only
> automatic modules (using Automatic-Module-Name declarations in the
> manifests).
> 
> I want to use jpackage to produce platform-specific application
> distributions, but the automatic modules are causing me problems.
> Essentially, as far as I can tell, there are exactly two approaches
> that jpackage will take:
> 
>  1. Put all of your application jars inside an app directory inside
>     the app image, and configure the runtime such that all of those
>     jars end up on the class path.
> 
>  2. Take all of the application modules and compile them into the
>     resulting app image runtime using jlink.
> 
> It would _really_ help myself (and possibly others, given that I've
> never seen a Java application consisting of 100% named modules) if
> there was a third option:
> 
>  3. Take all of the application jars and place them inside an app
>     directory inside the app image, and configure the runtime such
>     that all of those jars _end up on the module path_.
> 
> Effectively, I'd like a runtime that behaves as if "java -p app"
> had been specified on the command-line. I don't care about minimizing
> the size of the runtime with jlink by discarding unused modules. I
> _do_ care about having a nice double-clickable exe on Windows that
> has a nice icon, identifies itself properly in Process Explorer, and
> has all of my jars on the module path so that the services work.
> 
> Is anything like this on the horizon? I believe I've published more
> JPMS modules than any other individual on the planet, but I've never
> been able to make any use of jlink due to the entire world not having
> been modularized. I don't want to be rewriting my dependencies with
> Moditect and other tools: My dependencies already work correctly on the
> module path, I just can't seem to get them into anything jpackage will
> produce!
> 
> -- 
> Mark Raynsford | https://www.io7m.com
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/jigsaw-dev/attachments/20231120/db01d71d/attachment.htm>


More information about the jigsaw-dev mailing list