< prev index next >

test/jdk/tools/jlink/JLinkTest.java

Print this page

        

@@ -40,10 +40,11 @@
 import tests.JImageGenerator;
 
 /*
  * @test
  * @summary Test image creation
+ * @bug 8189777
  * @author Jean-Francois Denise
  * @library ../lib
  * @modules java.base/jdk.internal.jimage
  *          jdk.jdeps/com.sun.tools.classfile
  *          jdk.jlink/jdk.tools.jlink.internal

@@ -104,10 +105,32 @@
                         expectedJLinkPlugins);
             }
         }
 
         {
+            // No --module-path specified. $JAVA_HOME/jmods should be assumed.
+            // The following should succeed as it uses only system modules.
+            String imageDir = "bug818977-no-modulepath";
+            JImageGenerator.getJLinkTask()
+                    .output(helper.createNewImageDir(imageDir))
+                    .addMods("jdk.scripting.nashorn")
+                    .call().assertSuccess();
+        }
+
+        {
+            // invalid --module-path specified. java.base not found it it.
+            // $JAVA_HOME/jmods should be added automatically.
+            // The following should succeed as it uses only system modules.
+            String imageDir = "bug8189777-invalid-modulepath";
+            JImageGenerator.getJLinkTask()
+                    .modulePath("does_not_exist_path")
+                    .output(helper.createNewImageDir(imageDir))
+                    .addMods("jdk.scripting.nashorn")
+                    .call().assertSuccess();
+        }
+
+        {
             String moduleName = "bug8134651";
             JImageGenerator.getJLinkTask()
                     .modulePath(helper.defaultModulePath())
                     .output(helper.createNewImageDir(moduleName))
                     .addMods("leaf1")

@@ -120,10 +143,21 @@
             JImageGenerator.getJLinkTask()
                     .modulePath("")
                     .output(helper.createNewImageDir(moduleName))
                     .addMods("leaf1")
                     .call().assertFailure("Error: no value given for --module-path");
+            // do not include standard module path - should be added automatically
+            JImageGenerator.getJLinkTask()
+                    .modulePath(helper.defaultModulePath(false))
+                    .output(helper.createNewImageDir(moduleName))
+                    .addMods("leaf1")
+                    .call().assertSuccess();
+            // no --module-path. default sys mod path is assumed - but that won't contain 'leaf1' module
+            JImageGenerator.getJLinkTask()
+                    .output(helper.createNewImageDir(moduleName))
+                    .addMods("leaf1")
+                    .call().assertFailure("Error: Module leaf1 not found");
         }
 
         {
             String moduleName = "m"; // 8163382
             Path jmod = helper.generateDefaultJModule(moduleName).assertSuccess();
< prev index next >