[ https://issues.apache.org/jira/browse/SUREFIRE-1539?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Elliotte Rusty Harold updated SUREFIRE-1539: -------------------------------------------- Summary: Surefire causes Jigsaw runtime errors when forkCount > 0 (was: Surefire causes Jigwaw runtime errors when forkCount > 0) > Surefire causes Jigsaw runtime errors when forkCount > 0 > -------------------------------------------------------- > > Key: SUREFIRE-1539 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1539 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Surefire Plugin > Affects Versions: 2.22.0 > Reporter: foo bar > Priority: Major > Attachments: mvn-X-clean-install--forkCount0-OK.txt, > mvn-X-clean-install--noforkCount0-KO.txt > > > h1. The problem > I'm migrating my toy project to Jigsaw modules. > Now I managed to make it work ({{maven clean install}} OK), but I had to > pass an additional flag to Surefire ({{forkCount=0}}) that I think I > shouldn't have to and feels very "magical" (in a bad way). > To reproduce: > 1. {{git clone [https://github.com/vandekeiser/wires.git]}} > 2. {{git checkout REPORT_SUREFIRE}} > 3.1 {{mvn clean install}} > -->passes > 3.2 remove {{<forkCount>0</forkCount>}} in {{/pom.xml}} > -->fails > h1. Analysis > If I remove {{<forkCount>0</forkCount>}} or set it to 1 in {{/pom.xml}} I get: > {code:java} > [ERROR] Tests run: 5, Failures: 0, Errors: 5, Skipped: 0, Time elapsed: 5.678 > s <<< FAILURE! - in > fr.cla.wires.core.boxes.exampleusage.propertybasedtesting.MultipleAnd_ReduceAndCollectShouldBeEquivalent_PbtTest > [ERROR] > should_sometimes_give_false(fr.cla.wires.core.boxes.exampleusage.propertybasedtesting.MultipleAnd_ReduceAndCollectShouldBeEquivalent_PbtTest) > Time elapsed: 0.219 s <<< ERROR! > com.pholser.junit.quickcheck.internal.ReflectionException: > java.lang.IllegalAccessException: class > com.pholser.junit.quickcheck.internal.Reflection cannot access class > fr.cla.wires.core.support.tests.pbt.BooleansGenerator (in module > fr.cla.wires.core) because module fr.cla.wires.core does not export > fr.cla.wires.core.support.tests.pbt to unnamed module @4b5a5ed1 > {code} > Looks like --add-opens is no longer added? Or is it just appended to the > command line, not added to the tmp java @arg file? > Or is it that with forkCount=0 the test is ran on the classpath and with > forkCount=1 the test is ran on the modulepath? > > If i set it to 2, I get instead: > {code:java} > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-surefire-plugin:2.22.0:test (default-test) on > project wires-support: Execution default-test of goal > org.apache.maven.plugins:maven-surefire-plugin:2.22.0:test failed: > java.lang.ClassNotFoundException: > org.apache.maven.plugin.surefire.StartupReportConfiguration -> [Help 1]{code} > Which is even more mysterious. > Environment: > {code:java} > $ mvn -version > Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; > 2018-06-17T20:33:14+02:00) > Maven home: G:\software\apache-maven-3.5.4-bin\apache-maven-3.5.4 > Java version: 10.0.2, vendor: Oracle Corporation, runtime: C:\Program > Files\Java\jdk-10.0.2 > Default locale: fr_FR, platform encoding: Cp1252 > OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"{code} -- This message was sent by Atlassian Jira (v8.20.10#820010)