On Sat, 17 Sep 2022 04:03:35 GMT, Leslie Zhai <lz...@openjdk.org> wrote:
>> Hi, >> >> @dumasun reported the issue: >> >> Configured with jfx-ls-modular-sdk: >> >> >> configure --with-import-modules=modular-sdk >> >> >> `make run-test CONF=fastdebug TEST="tools/launcher/FXLauncherTest.java"` >> failed: >> >> >> ----------System.err:(11/697)---------- >> java.lang.RuntimeException: JavaFX modules erroneously included in the JDK >> at FXLauncherTest.main(FXLauncherTest.java:451) >> at >> java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) >> at java.base/java.lang.reflect.Method.invoke(Method.java:578) >> at >> com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:127) >> at java.base/java.lang.Thread.run(Thread.java:1589) >> >> JavaTest Message: Test threw exception: java.lang.RuntimeException: JavaFX >> modules erroneously included in the JDK >> JavaTest Message: shutting down test >> >> STATUS:Failed.`main' threw exception: java.lang.RuntimeException: JavaFX >> modules erroneously included in the JDK >> >> >> Thanks, >> Leslie Zhai > > Leslie Zhai has updated the pull request incrementally with one additional > commit since the last revision: > > 8293910: Try --upgrade-module-path and --patch-module but still failed The --patch-module option is used to override or add classes/resources in the module, it doesn't override the module definition. I see you tried --upgrade-module-path too but you've set the value to IMPORT_MODULE_DIR and it's not clear what this means in this test. Can you try this, I think this should do what you want: --- a/test/jdk/tools/launcher/FXLauncherTest.java +++ b/test/jdk/tools/launcher/FXLauncherTest.java @@ -223,7 +223,7 @@ public class FXLauncherTest extends TestHelper { compileFXModule(); List<String> fxCompilerArgs = new ArrayList<>(); - fxCompilerArgs.add("--module-path=" + MODULE_DIR); + fxCompilerArgs.add("--upgrade-module-path=" + MODULE_DIR); fxCompilerArgs.add("--add-modules=javafx.graphics"); fxCompilerArgs.addAll(Arrays.asList(compilerArgs)); compile(fxCompilerArgs.toArray(new String[fxCompilerArgs.size()])); @@ -232,7 +232,7 @@ public class FXLauncherTest extends TestHelper { static TestResult doFxExec(String...cmds) { List<String> fxCmds = new ArrayList<>(); fxCmds.addAll(Arrays.asList(cmds)); - fxCmds.add(1, "--module-path=" + MODULE_DIR); + fxCmds.add(1, "--upgrade-module-path=" + MODULE_DIR); fxCmds.add(2, "--add-modules=javafx.graphics"); return doExec(fxCmds.toArray(new String[fxCmds.size()])); } @@ -439,18 +439,6 @@ public class FXLauncherTest extends TestHelper { } public static void main(String... args) throws Exception { - - // Ensure that FX is not part of jdk - Class<?> fxClass = null; - try { - fxClass = Class.forName(FX_MARKER_CLASS); - } catch (ClassNotFoundException ex) { - // do nothing - } - if (fxClass != null) { - throw new RuntimeException("JavaFX modules erroneously included in the JDK"); - } - FXLauncherTest fxt = new FXLauncherTest(); fxt.run(args); if (testExitValue > 0) { ------------- PR: https://git.openjdk.org/jdk/pull/10299