I have executed examples from
http://openjdk.java.net/projects/jigsaw/quick-start
Now I have handson exps but still something is not clear.

Did Jigsaw broke backwards compatibility?
Running Main-Class from Manifest would not work like this?
java -jar surefire.jar

The problem is that it makes sense to me to use "*--patch-module*" along
with
building sources to Java 9 module using *module-info.java*.
So it is strange to me that somebody is going to compile *src/test/java* to
Jigsaw module e,g, "*test.base*" and it is strange that Manifest Main-Class
cannot be executed in Java 9.

So I compiled sources a little bit different way but the principle like
this:


*javac -d target/test-classes/test.base
\src/test/java/test.base/module-info.java
\src/test/java/test.base/pkg/Test.java*

The module appears in *target/test-classes/test.base* using
module-info.class.
Now I am going to provide patched class-path to *mypatches/test.base*
without having *module-info.class*.

This means we are going to suppress regular module in target and use
another class path
from location *mypatches/test.base* yet having sub-directory *test.base* as
module name (does not have module-info.class).

This executes console application in pkg.Test.java - not from Manifest.


*java --patch-module test.base=mypatches/test.base \--module-path
target/test-classes \--module test.base/pkg.Test*

The main problem here is that we are going to replace two class paths as
another workaround of old command "*java -jar surefire.jar*" which would
not work with Manifest anymore in JDK9, AFAIK.
Is it truth?
If it is truth, then it is broken backwards compatibility in Java.

Pls correct me if I am wrong and clarify more what is intended with Jigsaw
in Surefire.

Cheers
Tibor

Reply via email to