< prev index next >

test/tools/jlink/JLinkTest.java

Print this page




  35 import java.util.spi.ToolProvider;
  36 import java.util.stream.Stream;
  37 
  38 import jdk.tools.jlink.plugin.Plugin;
  39 import jdk.tools.jlink.internal.PluginRepository;
  40 import tests.Helper;
  41 import tests.JImageGenerator;
  42 
  43 /*
  44  * @test
  45  * @summary Test image creation
  46  * @author Jean-Francois Denise
  47  * @library ../lib
  48  * @modules java.base/jdk.internal.jimage
  49  *          jdk.jdeps/com.sun.tools.classfile
  50  *          jdk.jlink/jdk.tools.jlink.internal
  51  *          jdk.jlink/jdk.tools.jlink.plugin
  52  *          jdk.jlink/jdk.tools.jimage
  53  *          jdk.compiler
  54  * @build tests.*
  55  * @run main/othervm -Xmx1g JLinkTest
  56  */
  57 public class JLinkTest {
  58     static final ToolProvider JLINK_TOOL = ToolProvider.findFirst("jlink")
  59         .orElseThrow(() ->
  60             new RuntimeException("jlink tool not found")
  61         );
  62 
  63     // number of built-in plugins from jdk.jlink module
  64     private static int getNumJlinkPlugins() {
  65         ModuleDescriptor desc = Plugin.class.getModule().getDescriptor();
  66         return desc.provides().stream()
  67                 .filter(p -> p.service().equals(Plugin.class.getName()))
  68                 .map(p -> p.providers().size())
  69                 .findAny()
  70                 .orElse(0);
  71     }
  72 
  73     private static boolean isOfJLinkModule(Plugin p) {
  74         return p.getClass().getModule() == Plugin.class.getModule();
  75     }




  35 import java.util.spi.ToolProvider;
  36 import java.util.stream.Stream;
  37 
  38 import jdk.tools.jlink.plugin.Plugin;
  39 import jdk.tools.jlink.internal.PluginRepository;
  40 import tests.Helper;
  41 import tests.JImageGenerator;
  42 
  43 /*
  44  * @test
  45  * @summary Test image creation
  46  * @author Jean-Francois Denise
  47  * @library ../lib
  48  * @modules java.base/jdk.internal.jimage
  49  *          jdk.jdeps/com.sun.tools.classfile
  50  *          jdk.jlink/jdk.tools.jlink.internal
  51  *          jdk.jlink/jdk.tools.jlink.plugin
  52  *          jdk.jlink/jdk.tools.jimage
  53  *          jdk.compiler
  54  * @build tests.*
  55  * @run main/othervm JLinkTest
  56  */
  57 public class JLinkTest {
  58     static final ToolProvider JLINK_TOOL = ToolProvider.findFirst("jlink")
  59         .orElseThrow(() ->
  60             new RuntimeException("jlink tool not found")
  61         );
  62 
  63     // number of built-in plugins from jdk.jlink module
  64     private static int getNumJlinkPlugins() {
  65         ModuleDescriptor desc = Plugin.class.getModule().getDescriptor();
  66         return desc.provides().stream()
  67                 .filter(p -> p.service().equals(Plugin.class.getName()))
  68                 .map(p -> p.providers().size())
  69                 .findAny()
  70                 .orElse(0);
  71     }
  72 
  73     private static boolean isOfJLinkModule(Plugin p) {
  74         return p.getClass().getModule() == Plugin.class.getModule();
  75     }


< prev index next >