The baby and the bathwater (the return)

Jonathan Gibbons jonathan.gibbons at oracle.com
Sun Jun 3 19:53:30 UTC 2018


Rémi,

Generally, you should consider the runtime "module path" to be composed 
of three elements: the upgrade module path (--upgrade-module-path), the 
system modules (--system) and the user module path (--module-path).  
Depending on your requirements, you may want to take --patch-module into 
account as well.  At compile time there is also the source path 
(--source-path or --module-source-path) to consider.

While this may seem complicated, it is analagous of the pre-Jigsaw world of

     -Xbootclasspath/p:  -bootclasspath  -Xbootclasspath/a: -classpath   
(and -sourcepath at compile time)

-- Jon


On 6/3/18 12:43 PM, Remi Forax wrote:
> Hi all,
> There were discussions on that list [1] about the fact that beginning with Java 9, there were 2 ways to deploy modules, classpath vs module-path.
>
> I've discovered last Friday there that are not 2 configurations but 3 configurations.
> You can also use jlink [2] and in that case, the modules are not loaded though the module-path but are considered as system modules, so a library should also be tested with that configuration.
>
> In my case, Spring Boot annotations scanning works with the classpath, works with the module-path but fails if deployed as system modules [3].
>
> regards,
> Rémi
>
>
> [1] http://mail.openjdk.java.net/pipermail/jigsaw-dev/2018-March/013689.html
> [2] http://openjdk.java.net/jeps/282
> [3] https://github.com/forax/pro-demo/tree/master/spring-demo



More information about the jigsaw-dev mailing list