RFR: 8345259: Disallow ALL-MODULE-PATH without explicit --module-path [v11]

Severin Gehwolf sgehwolf at openjdk.org
Wed Dec 18 18:28:39 UTC 2024


On Wed, 18 Dec 2024 18:01:24 GMT, Mandy Chung <mchung at openjdk.org> wrote:

> ```
> $ jlink --add-modules ALL-MODULE-PATH --module-path build/jmods --limit-modules jdk.net --output ./build/test-img
> ```
>  
> This creates an image with jdk.net and its transitive dependences which is the existing behavior, right?  We are trying to revisit `--add-modules ALL-MODULE-PATH` with `--limit-modules` in the future.

Only if the `$JAVA_HOME/jmods` folder is also added to the module path. Existing behaviour is like this:


bin/jlink --add-modules ALL-MODULE-PATH --module-path mods --limit-modules jdk.net --verbose --output test-img
Error: Module jdk.net not found
java.lang.module.FindException: Module jdk.net not found
	at java.base/java.lang.module.Resolver.findFail(Resolver.java:892)
	at java.base/java.lang.module.Resolver.resolve(Resolver.java:129)
	at java.base/java.lang.module.Configuration.resolve(Configuration.java:413)
	at java.base/java.lang.module.Configuration.resolve(Configuration.java:252)
	at jdk.jlink/jdk.tools.jlink.internal.JlinkTask.limitFinder(JlinkTask.java:780)
	at jdk.jlink/jdk.tools.jlink.internal.JlinkTask.newModuleFinder(JlinkTask.java:552)
	at jdk.jlink/jdk.tools.jlink.internal.JlinkTask.initJlinkConfig(JlinkTask.java:384)
	at jdk.jlink/jdk.tools.jlink.internal.JlinkTask.run(JlinkTask.java:289)
	at jdk.jlink/jdk.tools.jlink.internal.Main.run(Main.java:50)
	at jdk.jlink/jdk.tools.jlink.internal.Main.main(Main.java:34)


vs.


$ ./bin/jlink --add-modules ALL-MODULE-PATH --module-path mods:$(pwd)/jmods --limit-modules jdk.net --verbose --output test-img
java.base file:///disk/openjdk/builds/oracle-ea/jdk-24+26/jmods/java.base.jmod
jdk.net file:///disk/openjdk/builds/oracle-ea/jdk-24+26/jmods/jdk.net.jmod

Providers:
  java.base provides java.nio.file.spi.FileSystemProvider used by java.base


I can revert those changes if you prefer.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/22494#issuecomment-2551998695


More information about the core-libs-dev mailing list