66 // Define module: first_mod |
66 // Define module: first_mod |
67 // Can read: java.base, second_mod |
67 // Can read: java.base, second_mod |
68 // Packages: none |
68 // Packages: none |
69 // Packages exported: none |
69 // Packages exported: none |
70 ModuleDescriptor descriptor_first_mod = |
70 ModuleDescriptor descriptor_first_mod = |
71 ModuleDescriptor.module("first_mod") |
71 ModuleDescriptor.newModule("first_mod") |
72 .requires("java.base") |
72 .requires("java.base") |
73 .requires("second_mod") |
73 .requires("second_mod") |
74 .build(); |
74 .build(); |
75 |
75 |
76 // Define module: second_mod |
76 // Define module: second_mod |
77 // Can read: java.base |
77 // Can read: java.base |
78 // Packages: p2 |
78 // Packages: p2 |
79 // Packages exported: p2 is exported to first_mod |
79 // Packages exported: p2 is exported to first_mod |
80 ModuleDescriptor descriptor_second_mod = |
80 ModuleDescriptor descriptor_second_mod = |
81 ModuleDescriptor.module("second_mod") |
81 ModuleDescriptor.newModule("second_mod") |
82 .requires("java.base") |
82 .requires("java.base") |
83 .exports("p2", Set.of("first_mod")) |
83 .exports("p2", Set.of("first_mod")) |
84 .build(); |
84 .build(); |
85 |
85 |
86 // Set up a ModuleFinder containing all modules for this layer |
86 // Set up a ModuleFinder containing all modules for this layer |
87 ModuleFinder finder = ModuleLibrary.of(descriptor_first_mod, descriptor_second_mod); |
87 ModuleFinder finder = ModuleLibrary.of(descriptor_first_mod, descriptor_second_mod); |
88 |
88 |
89 // Resolves "first_mod" |
89 // Resolves "first_mod" |
90 Configuration cf = Layer.boot() |
90 Configuration cf = Layer.boot() |
91 .configuration() |
91 .configuration() |
92 .resolveRequires(finder, ModuleFinder.of(), Set.of("first_mod")); |
92 .resolve(finder, ModuleFinder.of(), Set.of("first_mod")); |
93 |
93 |
94 // Map each module to the same class loader |
94 // Map each module to the same class loader |
95 Map<String, ClassLoader> map = new HashMap<>(); |
95 Map<String, ClassLoader> map = new HashMap<>(); |
96 map.put("first_mod", MySameClassLoader.loader1); |
96 map.put("first_mod", MySameClassLoader.loader1); |
97 map.put("second_mod", MySameClassLoader.loader1); |
97 map.put("second_mod", MySameClassLoader.loader1); |