Merge
authorduke
Wed, 05 Jul 2017 23:13:02 +0200
changeset 44614 a34001e206f9
parent 44613 49a5ced535f6 (diff)
parent 44609 cf81fa72eb18 (current diff)
child 44617 112ddd6c13b2
Merge
hotspot/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.test/src/org/graalvm/compiler/test/JLRModule.java
hotspot/test/runtime/modules/java.base/java/lang/reflect/ModuleHelper.java
jdk/src/java.base/share/classes/java/lang/reflect/Layer.java
jdk/src/java.base/share/classes/java/lang/reflect/LayerInstantiationException.java
jdk/src/java.base/share/classes/java/lang/reflect/Module.java
jdk/src/java.base/share/classes/java/lang/reflect/WeakPairMap.java
jdk/src/java.base/share/classes/jdk/internal/misc/JavaLangReflectModuleAccess.java
jdk/test/java/lang/reflect/Layer/BasicLayerTest.java
jdk/test/java/lang/reflect/Layer/LayerAndLoadersTest.java
jdk/test/java/lang/reflect/Layer/LayerControllerTest.java
jdk/test/java/lang/reflect/Layer/layertest/Test.java
jdk/test/java/lang/reflect/Layer/src/m1/module-info.java
jdk/test/java/lang/reflect/Layer/src/m1/p/Main.java
jdk/test/java/lang/reflect/Layer/src/m1/p/Service.java
jdk/test/java/lang/reflect/Layer/src/m2/module-info.java
jdk/test/java/lang/reflect/Layer/src/m2/q/Hello.java
jdk/test/java/lang/reflect/Layer/src/m3/module-info.java
jdk/test/java/lang/reflect/Layer/src/m3/w/Hello.java
jdk/test/java/lang/reflect/Layer/src/m4/impl/ServiceImpl.java
jdk/test/java/lang/reflect/Layer/src/m4/module-info.java
jdk/test/java/lang/reflect/Module/AddExportsTest.java
jdk/test/java/lang/reflect/Module/AnnotationsTest.java
jdk/test/java/lang/reflect/Module/BasicModuleTest.java
jdk/test/java/lang/reflect/Module/WithSecurityManager.java
jdk/test/java/lang/reflect/Module/access/AccessTest.java
jdk/test/java/lang/reflect/Module/access/src/target/module-info.java
jdk/test/java/lang/reflect/Module/access/src/target/p1/Helper.java
jdk/test/java/lang/reflect/Module/access/src/target/p1/Public.java
jdk/test/java/lang/reflect/Module/access/src/target/p2/NonPublic.java
jdk/test/java/lang/reflect/Module/access/src/target/q1/Public.java
jdk/test/java/lang/reflect/Module/access/src/target/q2/NonPublic.java
jdk/test/java/lang/reflect/Module/access/src/test/module-info.java
jdk/test/java/lang/reflect/Module/access/src/test/test/Main.java
jdk/test/java/lang/reflect/Module/addXXX/Driver.java
jdk/test/java/lang/reflect/Module/addXXX/m1/module-info.java
jdk/test/java/lang/reflect/Module/addXXX/m1/p1/C.java
jdk/test/java/lang/reflect/Module/addXXX/m2/module-info.java
jdk/test/java/lang/reflect/Module/addXXX/m2/p2/C.java
jdk/test/java/lang/reflect/Module/addXXX/m2/p2/internal/C.java
jdk/test/java/lang/reflect/Module/addXXX/m3/module-info.java
jdk/test/java/lang/reflect/Module/addXXX/m3/p3/C.java
jdk/test/java/lang/reflect/Module/addXXX/m4/module-info.java
jdk/test/java/lang/reflect/Module/addXXX/m4/p4/C.java
jdk/test/java/lang/reflect/Module/addXXX/test/module-info.java
jdk/test/java/lang/reflect/Module/addXXX/test/test/C.java
jdk/test/java/lang/reflect/Module/addXXX/test/test/Main.java
jdk/test/java/lang/reflect/Module/addXXX/test/test/Service.java
jdk/test/java/lang/reflect/Module/allow.policy
jdk/test/java/lang/reflect/Module/annotation/Basic.java
jdk/test/java/lang/reflect/Module/annotation/src/m/module-info.java
jdk/test/java/lang/reflect/Module/annotation/src/m/p/annotation/Bar.java
jdk/test/java/lang/reflect/Module/annotation/src/m/p/annotation/Baz.java
jdk/test/java/lang/reflect/Module/annotation/src/m/p/annotation/Foo.java
jdk/test/java/lang/reflect/WeakPairMap/Driver.java
jdk/test/java/lang/reflect/WeakPairMap/java.base/java/lang/reflect/WeakPairMapTest.java
--- a/jaxp/.hgtags	Wed Jul 05 23:12:51 2017 +0200
+++ b/jaxp/.hgtags	Wed Jul 05 23:13:02 2017 +0200
@@ -408,3 +408,4 @@
 d02b6fbcab06c59a5f5a4a6736bd4ec6d2567855 jdk-9+162
 92a38c75cd277d8b11f4382511a62087044659a1 jdk-9+163
 6dc790a4e8310c86712cfdf7561a9820818546e6 jdk-9+164
+55419603989707ec50c84bb379bbdc1adeec3ab2 jdk-9+165
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Constants.java	Wed Jul 05 23:12:51 2017 +0200
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Constants.java	Wed Jul 05 23:13:02 2017 +0200
@@ -99,7 +99,7 @@
         = com.sun.org.apache.bcel.internal.Constants.ACC_STATIC;
 
     public static final String MODULE_SIG
-        = "Ljava/lang/reflect/Module;";
+        = "Ljava/lang/Module;";
     public static final String CLASS_SIG
         = "Ljava/lang/Class;";
     public static final String STRING_SIG
@@ -255,7 +255,7 @@
     public static final String CLASS_CLASS
         = "java.lang.Class";
     public static final String MODULE_CLASS
-        = "java.lang.reflect.Module";
+        = "java.lang.Module";
     public static final String STRING_CLASS
         = "java.lang.String";
     public static final String OBJECT_CLASS
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesImpl.java	Wed Jul 05 23:12:51 2017 +0200
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesImpl.java	Wed Jul 05 23:13:02 2017 +0200
@@ -43,8 +43,6 @@
 import java.lang.module.ModuleFinder;
 import java.lang.module.ModuleReference;
 import java.lang.module.ModuleReader;
-import java.lang.reflect.Layer;
-import java.lang.reflect.Module;
 import java.security.AccessController;
 import java.security.CodeSigner;
 import java.security.CodeSource;
@@ -435,13 +433,13 @@
             }
         };
 
-        Layer bootLayer = Layer.boot();
+        ModuleLayer bootLayer = ModuleLayer.boot();
 
         Configuration cf = bootLayer.configuration()
                 .resolve(finder, ModuleFinder.of(), Set.of(mn));
 
-        PrivilegedAction<Layer> pa = () -> bootLayer.defineModules(cf, name -> loader);
-        Layer layer = AccessController.doPrivileged(pa);
+        PrivilegedAction<ModuleLayer> pa = () -> bootLayer.defineModules(cf, name -> loader);
+        ModuleLayer layer = AccessController.doPrivileged(pa);
 
         Module m = layer.findModule(mn).get();
         assert m.getLayer() == layer;
--- a/jaxp/test/TEST.ROOT	Wed Jul 05 23:12:51 2017 +0200
+++ b/jaxp/test/TEST.ROOT	Wed Jul 05 23:13:02 2017 +0200
@@ -23,7 +23,7 @@
 groups=TEST.groups
 
 # Minimum jtreg version
-requiredVersion=4.2 b04
+requiredVersion=4.2 b07
 
 # Use new module options
 useNewOptions=true
--- a/jaxp/test/javax/xml/jaxp/libs/jdk/testlibrary/JDKToolLauncher.java	Wed Jul 05 23:12:51 2017 +0200
+++ b/jaxp/test/javax/xml/jaxp/libs/jdk/testlibrary/JDKToolLauncher.java	Wed Jul 05 23:13:02 2017 +0200
@@ -24,7 +24,6 @@
 package jdk.testlibrary;
 
 import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.List;
 
 /**
@@ -60,7 +59,6 @@
         } else {
             executable = JDKToolFinder.getTestJDKTool(tool);
         }
-        vmArgs.addAll(Arrays.asList(ProcessTools.getPlatformSpecificVMArgs()));
     }
 
     /**
--- a/jaxp/test/javax/xml/jaxp/libs/jdk/testlibrary/ProcessTools.java	Wed Jul 05 23:12:51 2017 +0200
+++ b/jaxp/test/javax/xml/jaxp/libs/jdk/testlibrary/ProcessTools.java	Wed Jul 05 23:13:02 2017 +0200
@@ -260,31 +260,13 @@
     }
 
     /**
-     * Get platform specific VM arguments (e.g. -d64 on 64bit Solaris)
-     *
-     * @return String[] with platform specific arguments, empty if there are
-     *         none
-     */
-    public static String[] getPlatformSpecificVMArgs() {
-        String osName = System.getProperty("os.name");
-        String dataModel = System.getProperty("sun.arch.data.model");
-
-        if (osName.equals("SunOS") && dataModel.equals("64")) {
-            return new String[] { "-d64" };
-        }
-
-        return new String[] {};
-    }
-
-    /**
      * Create ProcessBuilder using the java launcher from the jdk to be tested,
      * and with any platform specific arguments prepended.
      *
      * @param command Arguments to pass to the java command.
      * @return The ProcessBuilder instance representing the java command.
      */
-    public static ProcessBuilder createJavaProcessBuilder(String... command)
-            throws Exception {
+    public static ProcessBuilder createJavaProcessBuilder(String... command) {
         return createJavaProcessBuilder(false, command);
     }
 
@@ -297,12 +279,11 @@
      * @param command Arguments to pass to the java command.
      * @return The ProcessBuilder instance representing the java command.
      */
-    public static ProcessBuilder createJavaProcessBuilder(boolean addTestVmAndJavaOptions, String... command) throws Exception {
+    public static ProcessBuilder createJavaProcessBuilder(boolean addTestVmAndJavaOptions, String... command) {
         String javapath = JDKToolFinder.getJDKTool("java");
 
         ArrayList<String> args = new ArrayList<>();
         args.add(javapath);
-        Collections.addAll(args, getPlatformSpecificVMArgs());
 
         if (addTestVmAndJavaOptions) {
             // -cp is needed to make sure the same classpath is used whether the test is
--- a/jaxp/test/javax/xml/jaxp/module/ServiceProviderTest/DefaultFactoryWrapperTest.java	Wed Jul 05 23:12:51 2017 +0200
+++ b/jaxp/test/javax/xml/jaxp/module/ServiceProviderTest/DefaultFactoryWrapperTest.java	Wed Jul 05 23:13:02 2017 +0200
@@ -27,8 +27,6 @@
 
 import java.io.StringReader;
 import java.io.StringWriter;
-import java.lang.reflect.Layer;
-import java.lang.reflect.Module;
 
 import javax.xml.datatype.DatatypeFactory;
 import javax.xml.parsers.DocumentBuilderFactory;
@@ -52,7 +50,7 @@
  * @summary test customized provider wraps the built-in system-default implementation of JAXP factories
  */
 public class DefaultFactoryWrapperTest {
-    private static final Module XML_MODULE = Layer.boot().findModule("java.xml").get();
+    private static final Module XML_MODULE = ModuleLayer.boot().findModule("java.xml").get();
 
     private static final String PROVIDER_PACKAGE = "xwp";
 
--- a/jaxp/test/javax/xml/jaxp/module/ServiceProviderTest/LayerModularXMLParserTest.java	Wed Jul 05 23:12:51 2017 +0200
+++ b/jaxp/test/javax/xml/jaxp/module/ServiceProviderTest/LayerModularXMLParserTest.java	Wed Jul 05 23:13:02 2017 +0200
@@ -29,9 +29,7 @@
 import java.lang.System;
 import java.lang.module.Configuration;
 import java.lang.module.ModuleFinder;
-import java.lang.reflect.Layer;
 import java.lang.reflect.Method;
-import java.lang.reflect.Module;
 import java.nio.file.Paths;
 import java.nio.file.Path;
 import java.util.Collections;
@@ -95,23 +93,23 @@
      */
     public void testOneLayer() throws Exception {
         ModuleFinder finder1 = ModuleFinder.of(MOD_DIR1);
-        Configuration cf1 = Layer.boot().configuration()
+        Configuration cf1 = ModuleLayer.boot().configuration()
                 .resolveAndBind(finder1, ModuleFinder.of(), Set.of("test"));
         ClassLoader scl = ClassLoader.getSystemClassLoader();
-        Layer layer1 = Layer.boot().defineModulesWithManyLoaders(cf1, scl);
+        ModuleLayer layer1 = ModuleLayer.boot().defineModulesWithManyLoaders(cf1, scl);
         ClassLoader cl1 = layer1.findLoader("test");
 
         Method m = cl1.loadClass("test.XMLFactoryHelper").getMethod("instantiateXMLService", String.class);
         for (String service : services1) {
             Object o = m.invoke(null, service);
-            Layer providerLayer = o.getClass().getModule().getLayer();
+            ModuleLayer providerLayer = o.getClass().getModule().getLayer();
             assertSame(providerLayer, layer1);
         }
 
         for (String service : services2) {
             Object o = m.invoke(null, service);
-            Layer providerLayer = o.getClass().getModule().getLayer();
-            assertSame(providerLayer, Layer.boot());
+            ModuleLayer providerLayer = o.getClass().getModule().getLayer();
+            assertSame(providerLayer, ModuleLayer.boot());
         }
 
     }
@@ -125,26 +123,26 @@
      */
     public void testTwoLayer() throws Exception {
         ModuleFinder finder1 = ModuleFinder.of(MOD_DIR1);
-        Configuration cf1 = Layer.boot().configuration()
+        Configuration cf1 = ModuleLayer.boot().configuration()
                 .resolveAndBind(finder1, ModuleFinder.of(), Set.of("test"));
         ClassLoader scl = ClassLoader.getSystemClassLoader();
-        Layer layer1 = Layer.boot().defineModulesWithManyLoaders(cf1, scl);
+        ModuleLayer layer1 = ModuleLayer.boot().defineModulesWithManyLoaders(cf1, scl);
 
         ModuleFinder finder2 = ModuleFinder.of(MOD_DIR2);
         Configuration cf2 = cf1.resolveAndBind(finder2, ModuleFinder.of(), Set.of("test"));
-        Layer layer2 = layer1.defineModulesWithOneLoader(cf2, layer1.findLoader("test"));
+        ModuleLayer layer2 = layer1.defineModulesWithOneLoader(cf2, layer1.findLoader("test"));
         ClassLoader cl2 = layer2.findLoader("test");
 
         Method m = cl2.loadClass("test.XMLFactoryHelper").getMethod("instantiateXMLService", String.class);
         for (String service : services1) {
             Object o = m.invoke(null, service);
-            Layer providerLayer = o.getClass().getModule().getLayer();
+            ModuleLayer providerLayer = o.getClass().getModule().getLayer();
             assertSame(providerLayer, layer1);
         }
 
         for (String service : services2) {
             Object o = m.invoke(null, service);
-            Layer providerLayer = o.getClass().getModule().getLayer();
+            ModuleLayer providerLayer = o.getClass().getModule().getLayer();
             assertSame(providerLayer, layer2);
         }
 
@@ -159,26 +157,26 @@
      */
     public void testTwoLayerWithDuplicate() throws Exception {
         ModuleFinder finder1 = ModuleFinder.of(MOD_DIR1, MOD_DIR2);
-        Configuration cf1 = Layer.boot().configuration()
+        Configuration cf1 = ModuleLayer.boot().configuration()
                 .resolveAndBind(finder1, ModuleFinder.of(), Set.of("test"));
         ClassLoader scl = ClassLoader.getSystemClassLoader();
-        Layer layer1 = Layer.boot().defineModulesWithManyLoaders(cf1, scl);
+        ModuleLayer layer1 = ModuleLayer.boot().defineModulesWithManyLoaders(cf1, scl);
 
         ModuleFinder finder2 = ModuleFinder.of(MOD_DIR2);
         Configuration cf2 = cf1.resolveAndBind(finder2, ModuleFinder.of(), Set.of("test"));
-        Layer layer2 = layer1.defineModulesWithOneLoader(cf2, layer1.findLoader("test"));
+        ModuleLayer layer2 = layer1.defineModulesWithOneLoader(cf2, layer1.findLoader("test"));
         ClassLoader cl2 = layer2.findLoader("test");
 
         Method m = cl2.loadClass("test.XMLFactoryHelper").getMethod("instantiateXMLService", String.class);
         for (String service : services1) {
             Object o = m.invoke(null, service);
-            Layer providerLayer = o.getClass().getModule().getLayer();
+            ModuleLayer providerLayer = o.getClass().getModule().getLayer();
             assertSame(providerLayer, layer1);
         }
 
         for (String service : services2) {
             Object o = m.invoke(null, service);
-            Layer providerLayer = o.getClass().getModule().getLayer();
+            ModuleLayer providerLayer = o.getClass().getModule().getLayer();
             assertSame(providerLayer, layer2);
         }
 
--- a/jaxp/test/javax/xml/jaxp/module/ServiceProviderTest/src/unnamed/Main.java	Wed Jul 05 23:12:51 2017 +0200
+++ b/jaxp/test/javax/xml/jaxp/module/ServiceProviderTest/src/unnamed/Main.java	Wed Jul 05 23:13:02 2017 +0200
@@ -24,8 +24,6 @@
 import static javax.xml.XMLConstants.W3C_XML_SCHEMA_NS_URI;
 
 import java.lang.module.ModuleDescriptor.Provides;
-import java.lang.reflect.Layer;
-import java.lang.reflect.Module;
 import java.util.Arrays;
 import java.util.HashSet;
 import java.util.Set;
@@ -38,7 +36,7 @@
      * @param args, the names of provider modules, which have been loaded
      */
     public static void main(String[] args) throws Exception {
-        Module xml = Layer.boot().findModule("java.xml").get();
+        Module xml = ModuleLayer.boot().findModule("java.xml").get();
 
         Set<String> allServices = new HashSet<>(Arrays.asList(expectedAllServices));
         if (!allServices.equals(xml.getDescriptor().uses()))
@@ -46,7 +44,7 @@
                     + xml.getDescriptor().uses());
 
         long violationCount = Stream.of(args)
-                .map(xmlProviderName -> Layer.boot().findModule(xmlProviderName).get())
+                .map(xmlProviderName -> ModuleLayer.boot().findModule(xmlProviderName).get())
                 .mapToLong(
                         // services provided by the implementation in provider module
                         provider -> provider.getDescriptor().provides().stream()