final class jdk.jpackage.internal.JLinkBundlerHelper
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: jdk.jpackage.internal.JLinkBundlerHelper
super_class: java.lang.Object
{
private static final java.lang.String ALL_MODULE_PATH;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "ALL-MODULE-PATH"
private static final java.lang.String ALL_DEFAULT;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "ALL-DEFAULT"
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/jpackage/internal/JLinkBundlerHelper;
static void execute(java.util.Map<java.lang.String, ? super java.lang.Object>, java.nio.file.Path);
descriptor: (Ljava/util/Map;Ljava/nio/file/Path;)V
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=8, args_size=2
start local 0 start local 1 0: getstatic jdk.jpackage.internal.StandardBundlerParam.MODULE_PATH:Ljdk/jpackage/internal/BundlerParamInfo;
aload 0
invokevirtual jdk.jpackage.internal.BundlerParamInfo.fetchFrom:(Ljava/util/Map;)Ljava/lang/Object;
checkcast java.util.List
1: astore 2
start local 2 2: getstatic jdk.jpackage.internal.StandardBundlerParam.ADD_MODULES:Ljdk/jpackage/internal/BundlerParamInfo;
aload 0
invokevirtual jdk.jpackage.internal.BundlerParamInfo.fetchFrom:(Ljava/util/Map;)Ljava/lang/Object;
checkcast java.util.Set
3: astore 3
start local 3 4: getstatic jdk.jpackage.internal.StandardBundlerParam.LIMIT_MODULES:Ljdk/jpackage/internal/BundlerParamInfo;
aload 0
invokevirtual jdk.jpackage.internal.BundlerParamInfo.fetchFrom:(Ljava/util/Map;)Ljava/lang/Object;
checkcast java.util.Set
5: astore 4
start local 4 6: getstatic jdk.jpackage.internal.StandardBundlerParam.JLINK_OPTIONS:Ljdk/jpackage/internal/StandardBundlerParam;
aload 0
invokevirtual jdk.jpackage.internal.StandardBundlerParam.fetchFrom:(Ljava/util/Map;)Ljava/lang/Object;
checkcast java.util.List
7: astore 5
start local 5 8: getstatic jdk.jpackage.internal.StandardBundlerParam.LAUNCHER_DATA:Ljdk/jpackage/internal/StandardBundlerParam;
9: aload 0
10: invokevirtual jdk.jpackage.internal.StandardBundlerParam.fetchFrom:(Ljava/util/Map;)Ljava/lang/Object;
checkcast jdk.jpackage.internal.LauncherData
astore 6
start local 6 11: aload 6
invokevirtual jdk.jpackage.internal.LauncherData.isModular:()Z
ifne 13
aload 3
invokeinterface java.util.Set.isEmpty:()Z
ifeq 13
12: aload 3
ldc "ALL-DEFAULT"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
13: StackMap locals: java.util.Map java.nio.file.Path java.util.List java.util.Set java.util.Set java.util.List jdk.jpackage.internal.LauncherData
StackMap stack:
aload 2
aload 3
aload 4
invokestatic jdk.jpackage.internal.JLinkBundlerHelper.createModuleList:(Ljava/util/List;Ljava/util/Set;Ljava/util/Set;)Ljava/util/Set;
astore 7
start local 7 14: aload 6
invokevirtual jdk.jpackage.internal.LauncherData.isModular:()Z
ifeq 16
15: aload 7
aload 6
invokevirtual jdk.jpackage.internal.LauncherData.moduleName:()Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
16: StackMap locals: java.util.Set
StackMap stack:
aload 1
aload 2
aload 7
aload 4
aload 5
invokestatic jdk.jpackage.internal.JLinkBundlerHelper.runJLink:(Ljava/nio/file/Path;Ljava/util/List;Ljava/util/Set;Ljava/util/Set;Ljava/util/List;)V
17: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 params Ljava/util/Map<Ljava/lang/String;-Ljava/lang/Object;>;
0 18 1 outputDir Ljava/nio/file/Path;
2 18 2 modulePath Ljava/util/List<Ljava/nio/file/Path;>;
4 18 3 addModules Ljava/util/Set<Ljava/lang/String;>;
6 18 4 limitModules Ljava/util/Set<Ljava/lang/String;>;
8 18 5 options Ljava/util/List<Ljava/lang/String;>;
11 18 6 launcherData Ljdk/jpackage/internal/LauncherData;
14 18 7 modules Ljava/util/Set<Ljava/lang/String;>;
Exceptions:
throws java.io.IOException, jdk.jpackage.internal.PackagerException
Signature: (Ljava/util/Map<Ljava/lang/String;-Ljava/lang/Object;>;Ljava/nio/file/Path;)V
MethodParameters:
Name Flags
params
outputDir
private static java.util.Set<java.lang.String> getDefaultModules(java.util.Collection<java.nio.file.Path>, java.util.Collection<java.lang.String>);
descriptor: (Ljava/util/Collection;Ljava/util/Collection;)Ljava/util/Set;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: invokestatic java.lang.module.ModuleFinder.ofSystem:()Ljava/lang/module/ModuleFinder;
invokeinterface java.lang.module.ModuleFinder.findAll:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
1: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
java/lang/module/ModuleReference.descriptor()Ljava/lang/module/ModuleDescriptor; (5)
(Ljava/lang/module/ModuleReference;)Ljava/lang/module/ModuleDescriptor;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
2: invokedynamic test()Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
jdk/jpackage/internal/JLinkBundlerHelper.exportsAPI(Ljava/lang/module/ModuleDescriptor;)Z (6)
(Ljava/lang/module/ModuleDescriptor;)Z
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
3: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
java/lang/module/ModuleDescriptor.name()Ljava/lang/String; (5)
(Ljava/lang/module/ModuleDescriptor;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
4: astore 2
start local 2 5: aload 2
6: aload 1
invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
7: invokestatic java.util.stream.Stream.concat:(Ljava/util/stream/Stream;Ljava/util/stream/Stream;)Ljava/util/stream/Stream;
8: invokestatic java.util.stream.Collectors.toSet:()Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.util.Set
9: astore 3
start local 3 10: aload 0
invokestatic jdk.jpackage.internal.JLinkBundlerHelper.createModuleFinder:(Ljava/util/Collection;)Ljava/lang/module/ModuleFinder;
astore 4
start local 4 11: invokestatic java.lang.module.Configuration.empty:()Ljava/lang/module/Configuration;
12: aload 4
iconst_0
anewarray java.nio.file.Path
invokestatic java.lang.module.ModuleFinder.of:([Ljava/nio/file/Path;)Ljava/lang/module/ModuleFinder;
aload 3
invokevirtual java.lang.module.Configuration.resolveAndBind:(Ljava/lang/module/ModuleFinder;Ljava/lang/module/ModuleFinder;Ljava/util/Collection;)Ljava/lang/module/Configuration;
13: invokevirtual java.lang.module.Configuration.modules:()Ljava/util/Set;
14: invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
15: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
java/lang/module/ResolvedModule.name()Ljava/lang/String; (5)
(Ljava/lang/module/ResolvedModule;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
16: invokestatic java.util.stream.Collectors.toSet:()Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.util.Set
17: areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 paths Ljava/util/Collection<Ljava/nio/file/Path;>;
0 18 1 addModules Ljava/util/Collection<Ljava/lang/String;>;
5 18 2 systemRoots Ljava/util/stream/Stream<Ljava/lang/String;>;
10 18 3 roots Ljava/util/Set<Ljava/lang/String;>;
11 18 4 finder Ljava/lang/module/ModuleFinder;
Signature: (Ljava/util/Collection<Ljava/nio/file/Path;>;Ljava/util/Collection<Ljava/lang/String;>;)Ljava/util/Set<Ljava/lang/String;>;
MethodParameters:
Name Flags
paths
addModules
private static boolean exportsAPI(java.lang.module.ModuleDescriptor);
descriptor: (Ljava/lang/module/ModuleDescriptor;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.module.ModuleDescriptor.exports:()Ljava/util/Set;
1: invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
2: invokedynamic test()Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
jdk/jpackage/internal/JLinkBundlerHelper.lambda$4(Ljava/lang/module/ModuleDescriptor$Exports;)Z (6)
(Ljava/lang/module/ModuleDescriptor$Exports;)Z
invokeinterface java.util.stream.Stream.anyMatch:(Ljava/util/function/Predicate;)Z
3: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 descriptor Ljava/lang/module/ModuleDescriptor;
MethodParameters:
Name Flags
descriptor
static java.lang.module.ModuleFinder createModuleFinder(java.util.Collection<java.nio.file.Path>);
descriptor: (Ljava/util/Collection;)Ljava/lang/module/ModuleFinder;
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: iconst_2
anewarray java.lang.module.ModuleFinder
dup
iconst_0
1: invokestatic java.util.jar.JarFile.runtimeVersion:()Ljava/lang/Runtime$Version;
iconst_1
2: aload 0
invokedynamic apply()Ljava/util/function/IntFunction;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(I)Ljava/lang/Object;
jdk/jpackage/internal/JLinkBundlerHelper.lambda$5(I)[Ljava/nio/file/Path; (6)
(I)[Ljava/nio/file/Path;
invokeinterface java.util.Collection.toArray:(Ljava/util/function/IntFunction;)[Ljava/lang/Object;
checkcast java.nio.file.Path[]
3: invokestatic jdk.internal.module.ModulePath.of:(Ljava/lang/Runtime$Version;Z[Ljava/nio/file/Path;)Ljava/lang/module/ModuleFinder;
aastore
dup
iconst_1
4: invokestatic java.lang.module.ModuleFinder.ofSystem:()Ljava/lang/module/ModuleFinder;
aastore
5: invokestatic java.lang.module.ModuleFinder.compose:([Ljava/lang/module/ModuleFinder;)Ljava/lang/module/ModuleFinder;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 modulePath Ljava/util/Collection<Ljava/nio/file/Path;>;
Signature: (Ljava/util/Collection<Ljava/nio/file/Path;>;)Ljava/lang/module/ModuleFinder;
MethodParameters:
Name Flags
modulePath
private static java.util.Set<java.lang.String> createModuleList(java.util.List<java.nio.file.Path>, java.util.Set<java.lang.String>, java.util.Set<java.lang.String>);
descriptor: (Ljava/util/List;Ljava/util/Set;Ljava/util/Set;)Ljava/util/Set;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=8, args_size=3
start local 0 start local 1 start local 2 0: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 3
start local 3 1: ldc "ALL-MODULE-PATH"
2: aload 0
invokedynamic get(Ljava/util/List;)Ljava/util/function/Supplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
jdk/jpackage/internal/JLinkBundlerHelper.lambda$6(Ljava/util/List;)Ljava/util/Collection; (6)
()Ljava/util/Collection;
3: ldc "ALL-DEFAULT"
4: aload 0
aload 3
invokedynamic get(Ljava/util/List;Ljava/util/Set;)Ljava/util/function/Supplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
jdk/jpackage/internal/JLinkBundlerHelper.lambda$7(Ljava/util/List;Ljava/util/Set;)Ljava/util/Collection; (6)
()Ljava/util/Collection;
5: invokestatic java.util.Map.of:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map;
astore 4
start local 4 6: aconst_null
astore 5
start local 5 7: aload 1
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 7
goto 12
StackMap locals: java.util.List java.util.Set java.util.Set java.util.Set java.util.Map java.util.function.Supplier top java.util.Iterator
StackMap stack:
8: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 6
start local 6 9: aload 4
aload 6
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.function.Supplier
astore 5
10: aload 5
ifnonnull 12
11: aload 3
aload 6
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 6 12: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
13: aload 5
ifnull 15
14: aload 3
aload 5
invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
checkcast java.util.Collection
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
15: StackMap locals: java.util.List java.util.Set java.util.Set java.util.Set java.util.Map java.util.function.Supplier
StackMap stack:
aload 3
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 paths Ljava/util/List<Ljava/nio/file/Path;>;
0 16 1 addModules Ljava/util/Set<Ljava/lang/String;>;
0 16 2 limitModules Ljava/util/Set<Ljava/lang/String;>;
1 16 3 modules Ljava/util/Set<Ljava/lang/String;>;
6 16 4 phonyModules Ljava/util/Map<Ljava/lang/String;Ljava/util/function/Supplier<Ljava/util/Collection<Ljava/lang/String;>;>;>;
7 16 5 phonyModule Ljava/util/function/Supplier<Ljava/util/Collection<Ljava/lang/String;>;>;
9 12 6 module Ljava/lang/String;
Signature: (Ljava/util/List<Ljava/nio/file/Path;>;Ljava/util/Set<Ljava/lang/String;>;Ljava/util/Set<Ljava/lang/String;>;)Ljava/util/Set<Ljava/lang/String;>;
MethodParameters:
Name Flags
paths
addModules
limitModules
private static void runJLink(java.nio.file.Path, java.util.List<java.nio.file.Path>, java.util.Set<java.lang.String>, java.util.Set<java.lang.String>, java.util.List<java.lang.String>);
descriptor: (Ljava/nio/file/Path;Ljava/util/List;Ljava/util/Set;Ljava/util/Set;Ljava/util/List;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=10, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 5
start local 5 1: aload 5
ldc "--output"
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
2: aload 5
aload 0
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
3: aload 1
ifnull 6
aload 1
invokeinterface java.util.List.isEmpty:()Z
ifne 6
4: aload 5
ldc "--module-path"
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
5: aload 5
aload 1
invokestatic jdk.jpackage.internal.JLinkBundlerHelper.getPathList:(Ljava/util/List;)Ljava/lang/String;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
6: StackMap locals: java.util.ArrayList
StackMap stack:
aload 2
ifnull 9
aload 2
invokeinterface java.util.Set.isEmpty:()Z
ifne 9
7: aload 5
ldc "--add-modules"
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
8: aload 5
aload 2
invokestatic jdk.jpackage.internal.JLinkBundlerHelper.getStringList:(Ljava/util/Set;)Ljava/lang/String;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
9: StackMap locals:
StackMap stack:
aload 3
ifnull 12
aload 3
invokeinterface java.util.Set.isEmpty:()Z
ifne 12
10: aload 5
ldc "--limit-modules"
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
11: aload 5
aload 3
invokestatic jdk.jpackage.internal.JLinkBundlerHelper.getStringList:(Ljava/util/Set;)Ljava/lang/String;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
12: StackMap locals:
StackMap stack:
aload 4
ifnull 21
13: aload 4
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 20
StackMap locals: java.nio.file.Path java.util.List java.util.Set java.util.Set java.util.List java.util.ArrayList top java.util.Iterator
StackMap stack:
14: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 6
start local 6 15: aload 6
ldc "--output"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 18
16: aload 6
ldc "--add-modules"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 18
17: aload 6
ldc "--module-path"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 19
18: StackMap locals: java.nio.file.Path java.util.List java.util.Set java.util.Set java.util.List java.util.ArrayList java.lang.String java.util.Iterator
StackMap stack:
new jdk.jpackage.internal.PackagerException
dup
ldc "error.blocked.option"
iconst_1
anewarray java.lang.String
dup
iconst_0
aload 6
aastore
invokespecial jdk.jpackage.internal.PackagerException.<init>:(Ljava/lang/String;[Ljava/lang/String;)V
athrow
19: StackMap locals:
StackMap stack:
aload 5
aload 6
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 6 20: StackMap locals: java.nio.file.Path java.util.List java.util.Set java.util.Set java.util.List java.util.ArrayList top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 14
21: StackMap locals: java.nio.file.Path java.util.List java.util.Set java.util.Set java.util.List java.util.ArrayList
StackMap stack:
new java.io.StringWriter
dup
invokespecial java.io.StringWriter.<init>:()V
astore 6
start local 6 22: new java.io.PrintWriter
dup
aload 6
invokespecial java.io.PrintWriter.<init>:(Ljava/io/Writer;)V
astore 7
start local 7 23: getstatic jdk.jpackage.internal.JLinkBundlerHelper$LazyLoad.JLINK_TOOL:Ljava/util/spi/ToolProvider;
aload 7
aload 7
aload 5
iconst_0
anewarray java.lang.String
invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.String[]
invokeinterface java.util.spi.ToolProvider.run:(Ljava/io/PrintWriter;Ljava/io/PrintWriter;[Ljava/lang/String;)I
istore 8
start local 8 24: aload 6
invokevirtual java.io.StringWriter.toString:()Ljava/lang/String;
astore 9
start local 9 25: aload 5
iconst_0
ldc "jlink"
invokevirtual java.util.ArrayList.add:(ILjava/lang/Object;)V
26: aload 5
aload 9
invokestatic java.util.List.of:(Ljava/lang/Object;)Ljava/util/List;
iload 8
invokestatic jdk.jpackage.internal.Log.verbose:(Ljava/util/List;Ljava/util/List;I)V
27: iload 8
ifeq 29
28: new jdk.jpackage.internal.PackagerException
dup
ldc "error.jlink.failed"
iconst_1
anewarray java.lang.String
dup
iconst_0
aload 9
aastore
invokespecial jdk.jpackage.internal.PackagerException.<init>:(Ljava/lang/String;[Ljava/lang/String;)V
athrow
29: StackMap locals: java.nio.file.Path java.util.List java.util.Set java.util.Set java.util.List java.util.ArrayList java.io.StringWriter java.io.PrintWriter int java.lang.String
StackMap stack:
return
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 output Ljava/nio/file/Path;
0 30 1 modulePath Ljava/util/List<Ljava/nio/file/Path;>;
0 30 2 modules Ljava/util/Set<Ljava/lang/String;>;
0 30 3 limitModules Ljava/util/Set<Ljava/lang/String;>;
0 30 4 options Ljava/util/List<Ljava/lang/String;>;
1 30 5 args Ljava/util/ArrayList<Ljava/lang/String;>;
15 20 6 option Ljava/lang/String;
22 30 6 writer Ljava/io/StringWriter;
23 30 7 pw Ljava/io/PrintWriter;
24 30 8 retVal I
25 30 9 jlinkOut Ljava/lang/String;
Exceptions:
throws jdk.jpackage.internal.PackagerException, java.io.IOException
Signature: (Ljava/nio/file/Path;Ljava/util/List<Ljava/nio/file/Path;>;Ljava/util/Set<Ljava/lang/String;>;Ljava/util/Set<Ljava/lang/String;>;Ljava/util/List<Ljava/lang/String;>;)V
MethodParameters:
Name Flags
output
modulePath
modules
limitModules
options
private static java.lang.String getPathList(java.util.List<java.nio.file.Path>);
descriptor: (Ljava/util/List;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
1: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
java/nio/file/Path.toString()Ljava/lang/String; (9 itf)
(Ljava/nio/file/Path;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
2: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
java/util/regex/Matcher.quoteReplacement(Ljava/lang/String;)Ljava/lang/String; (6)
(Ljava/lang/String;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
3: getstatic java.io.File.pathSeparator:Ljava/lang/String;
invokestatic java.util.stream.Collectors.joining:(Ljava/lang/CharSequence;)Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.lang.String
4: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 pathList Ljava/util/List<Ljava/nio/file/Path;>;
Signature: (Ljava/util/List<Ljava/nio/file/Path;>;)Ljava/lang/String;
MethodParameters:
Name Flags
pathList
private static java.lang.String getStringList(java.util.Set<java.lang.String>);
descriptor: (Ljava/util/Set;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
1: ldc ","
invokestatic java.util.stream.Collectors.joining:(Ljava/lang/CharSequence;)Ljava/util/stream/Collector;
2: invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.lang.String
invokestatic java.util.regex.Matcher.quoteReplacement:(Ljava/lang/String;)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 strings Ljava/util/Set<Ljava/lang/String;>;
Signature: (Ljava/util/Set<Ljava/lang/String;>;)Ljava/lang/String;
MethodParameters:
Name Flags
strings
private static boolean lambda$4(java.lang.module.ModuleDescriptor$Exports);
descriptor: (Ljava/lang/module/ModuleDescriptor$Exports;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.module.ModuleDescriptor$Exports.isQualified:()Z
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 e Ljava/lang/module/ModuleDescriptor$Exports;
private static java.nio.file.Path[] lambda$5(int);
descriptor: (I)[Ljava/nio/file/Path;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: iload 0
anewarray java.nio.file.Path
areturn
LocalVariableTable:
Start End Slot Name Signature
private static java.util.Collection lambda$6(java.util.List);
descriptor: (Ljava/util/List;)Ljava/util/Collection;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
0: aload 0
invokestatic jdk.jpackage.internal.JLinkBundlerHelper.createModuleFinder:(Ljava/util/Collection;)Ljava/lang/module/ModuleFinder;
1: invokeinterface java.lang.module.ModuleFinder.findAll:()Ljava/util/Set;
2: invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
3: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
java/lang/module/ModuleReference.descriptor()Ljava/lang/module/ModuleDescriptor; (5)
(Ljava/lang/module/ModuleReference;)Ljava/lang/module/ModuleDescriptor;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
4: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
java/lang/module/ModuleDescriptor.name()Ljava/lang/String; (5)
(Ljava/lang/module/ModuleDescriptor;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
5: invokestatic java.util.stream.Collectors.toSet:()Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.util.Collection
areturn
LocalVariableTable:
Start End Slot Name Signature
private static java.util.Collection lambda$7(java.util.List, java.util.Set);
descriptor: (Ljava/util/List;Ljava/util/Set;)Ljava/util/Collection;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
invokestatic jdk.jpackage.internal.JLinkBundlerHelper.getDefaultModules:(Ljava/util/Collection;Ljava/util/Collection;)Ljava/util/Set;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "JLinkBundlerHelper.java"
NestMembers:
jdk.jpackage.internal.JLinkBundlerHelper$LazyLoad
InnerClasses:
public final Version = java.lang.Runtime$Version of java.lang.Runtime
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public final Exports = java.lang.module.ModuleDescriptor$Exports of java.lang.module.ModuleDescriptor
private LazyLoad = jdk.jpackage.internal.JLinkBundlerHelper$LazyLoad of jdk.jpackage.internal.JLinkBundlerHelper