Hi Alan, thanks for the quick reply. Unfortunately I could not get it to work with --patch-module (I tried before finding -XD-Xmodule).
Maybe I'm doing something wrong? I'm using a JPMS demo project I developed[1]. I get the expected compilation errors when doing this: javac --module-path mods -d classes \ monitor.rest/src/main/java/monitor/rest/MonitorServer.java It works with -XD-Xmodule: javac --module-path mods -d classes \ XD-Xmodule monitor.rest monitor.rest/src/main/java/monitor/rest/MonitorServer.java With --patch-module I get the same errors as without: javac --module-path mods -d classes \ --patch-module monitor.rest=mods/monitor.rest.jar \ monitor.rest/src/main/java/monitor/rest/MonitorServer.java Also, it looks like the option is not even really processed. If using a non-existent module name or JAR or even if I add some additional equal signs, I get no particular error for that. I'm on ea-172-Jigsaw. so long ... Nicolai [1] https://github.com/CodeFX-org/demo-jpms-monitor ; it can be built with the contained compile.sh or multi-compile.sh (maybe after removing the 9's from the commands) On 11.06.2017 09:35, Alan Bateman wrote: > On 11/06/2017 08:13, Nicolai Parlog wrote: >> Hi! >> >> When incrementally compiling some of a module's sources it is >> necessary to make the compiler aware that the sources actually >> belong to that module. One way to do this was the non-standard >> option -Xmodule, which was recently demoted to the hidden >> -XD-Xmodule. >> >> I'm curious to know why. >> >> Example: >> >> javac --module-path mods -d classes >> src/foo.mod/com.example.SomeClass.java >> >> This will compile SomeClass in the unnamed module, making it fail >> if it uses types from bar.mod (even if foo.mod requires it). >> >> I know of three ways to fix this: >> >> * adding module declaration to compile command * multi-module >> declaration * option -XD-Xmodule >> >> I found the last option to be conceptually most fitting and also >> the least troublesome. >> > -Xmodule was folded into --patch-module some time ago. Just add > `--patch-module foo.mod=src/foo.jmod` to the above. > > I'll have to defer to Jon or Jan as to why -Xmodule wasn't removed. > As I recall, it was made hidden to allow for transition but I > thought that was temporary. > > -Alan > -- PGP Key: http://keys.gnupg.net/pks/lookup?op=vindex&search=0xCA3BAD2E9CCCD509 Web: http://codefx.org a blog about software development https://www.sitepoint.com/java high-quality Java/JVM content http://do-foss.de Free and Open Source Software for the City of Dortmund Twitter: https://twitter.com/nipafx