public final class jdk.tools.jlink.internal.TaskHelper
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: jdk.tools.jlink.internal.TaskHelper
  super_class: java.lang.Object
{
  public static final java.lang.String JLINK_BUNDLE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdk.tools.jlink.resources.jlink"

  public static final java.lang.String JIMAGE_BUNDLE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdk.tools.jimage.resources.jimage"

  private static final java.lang.String DEFAULTS_PROPERTY;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "jdk.jlink.defaults"

  private jdk.tools.jlink.internal.TaskHelper$PluginsHelper pluginOptions;
    descriptor: Ljdk/tools/jlink/internal/TaskHelper$PluginsHelper;
    flags: (0x0002) ACC_PRIVATE

  private java.io.PrintWriter log;
    descriptor: Ljava/io/PrintWriter;
    flags: (0x0002) ACC_PRIVATE

  private final jdk.tools.jlink.internal.TaskHelper$ResourceBundleHelper bundleHelper;
    descriptor: Ljdk/tools/jlink/internal/TaskHelper$ResourceBundleHelper;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.tools.jlink.internal.TaskHelper this
        start local 1 // java.lang.String path
         0: .line 683
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 684
            ldc "jdk.tools.jlink.resources.jlink"
            aload 1 /* path */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 3
            ldc "jdk.tools.jimage.resources.jimage"
            aload 1 /* path */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 3
         2: .line 685
            new java.lang.IllegalArgumentException
            dup
            ldc "Invalid Bundle"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 687
      StackMap locals: jdk.tools.jlink.internal.TaskHelper java.lang.String
      StackMap stack:
            aload 0 /* this */
            new jdk.tools.jlink.internal.TaskHelper$ResourceBundleHelper
            dup
            aload 1 /* path */
            invokespecial jdk.tools.jlink.internal.TaskHelper$ResourceBundleHelper.<init>:(Ljava/lang/String;)V
            putfield jdk.tools.jlink.internal.TaskHelper.bundleHelper:Ljdk/tools/jlink/internal/TaskHelper$ResourceBundleHelper;
         4: .line 688
            return
        end local 1 // java.lang.String path
        end local 0 // jdk.tools.jlink.internal.TaskHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljdk/tools/jlink/internal/TaskHelper;
            0    5     1  path  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      path  

  public <T> jdk.tools.jlink.internal.TaskHelper$OptionsHelper<T> newOptionsHelper(java.lang.Class<T>, jdk.tools.jlink.internal.TaskHelper$Option<?>[]);
    descriptor: (Ljava/lang/Class;[Ljdk/tools/jlink/internal/TaskHelper$Option;)Ljdk/tools/jlink/internal/TaskHelper$OptionsHelper;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=3
        start local 0 // jdk.tools.jlink.internal.TaskHelper this
        start local 1 // java.lang.Class clazz
        start local 2 // jdk.tools.jlink.internal.TaskHelper$Option[] options
         0: .line 692
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* optionsList */
        start local 3 // java.util.List optionsList
         1: .line 693
            aload 2 /* options */
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 6
      StackMap locals: jdk.tools.jlink.internal.TaskHelper java.lang.Class jdk.tools.jlink.internal.TaskHelper$Option[] java.util.List top int int jdk.tools.jlink.internal.TaskHelper$Option[]
      StackMap stack:
         2: aload 7
            iload 5
            aaload
            astore 4 /* o */
        start local 4 // jdk.tools.jlink.internal.TaskHelper$Option o
         3: .line 695
            aload 4 /* o */
            astore 8 /* opt */
        start local 8 // jdk.tools.jlink.internal.TaskHelper$Option opt
         4: .line 696
            aload 3 /* optionsList */
            aload 8 /* opt */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // jdk.tools.jlink.internal.TaskHelper$Option opt
        end local 4 // jdk.tools.jlink.internal.TaskHelper$Option o
         5: .line 693
            iinc 5 1
      StackMap locals:
      StackMap stack:
         6: iload 5
            iload 6
            if_icmplt 2
         7: .line 698
            new jdk.tools.jlink.internal.TaskHelper$OptionsHelper
            dup
            aload 0 /* this */
            aload 3 /* optionsList */
            invokespecial jdk.tools.jlink.internal.TaskHelper$OptionsHelper.<init>:(Ljdk/tools/jlink/internal/TaskHelper;Ljava/util/List;)V
            areturn
        end local 3 // java.util.List optionsList
        end local 2 // jdk.tools.jlink.internal.TaskHelper$Option[] options
        end local 1 // java.lang.Class clazz
        end local 0 // jdk.tools.jlink.internal.TaskHelper this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Ljdk/tools/jlink/internal/TaskHelper;
            0    8     1        clazz  Ljava/lang/Class<TT;>;
            0    8     2      options  [Ljdk/tools/jlink/internal/TaskHelper$Option;
            1    8     3  optionsList  Ljava/util/List<Ljdk/tools/jlink/internal/TaskHelper$Option<TT;>;>;
            3    5     4            o  Ljdk/tools/jlink/internal/TaskHelper$Option<*>;
            4    5     8          opt  Ljdk/tools/jlink/internal/TaskHelper$Option<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;[Ljdk/tools/jlink/internal/TaskHelper$Option<*>;)Ljdk/tools/jlink/internal/TaskHelper$OptionsHelper<TT;>;
    MethodParameters:
         Name  Flags
      clazz    
      options  

  public jdk.tools.jlink.internal.TaskHelper$BadArgs newBadArgs(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)Ljdk/tools/jlink/internal/TaskHelper$BadArgs;
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // jdk.tools.jlink.internal.TaskHelper this
        start local 1 // java.lang.String key
        start local 2 // java.lang.Object[] args
         0: .line 702
            new jdk.tools.jlink.internal.TaskHelper$BadArgs
            dup
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* args */
            invokespecial jdk.tools.jlink.internal.TaskHelper$BadArgs.<init>:(Ljdk/tools/jlink/internal/TaskHelper;Ljava/lang/String;[Ljava/lang/Object;)V
            areturn
        end local 2 // java.lang.Object[] args
        end local 1 // java.lang.String key
        end local 0 // jdk.tools.jlink.internal.TaskHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/tools/jlink/internal/TaskHelper;
            0    1     1   key  Ljava/lang/String;
            0    1     2  args  [Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      key   
      args  

  public java.lang.String getMessage(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.tools.jlink.internal.TaskHelper this
        start local 1 // java.lang.String key
        start local 2 // java.lang.Object[] args
         0: .line 706
            aload 0 /* this */
            getfield jdk.tools.jlink.internal.TaskHelper.bundleHelper:Ljdk/tools/jlink/internal/TaskHelper$ResourceBundleHelper;
            aload 1 /* key */
            aload 2 /* args */
            invokevirtual jdk.tools.jlink.internal.TaskHelper$ResourceBundleHelper.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 2 // java.lang.Object[] args
        end local 1 // java.lang.String key
        end local 0 // jdk.tools.jlink.internal.TaskHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/tools/jlink/internal/TaskHelper;
            0    1     1   key  Ljava/lang/String;
            0    1     2  args  [Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      key   
      args  

  public void setLog(java.io.PrintWriter);
    descriptor: (Ljava/io/PrintWriter;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.tools.jlink.internal.TaskHelper this
        start local 1 // java.io.PrintWriter log
         0: .line 710
            aload 0 /* this */
            aload 1 /* log */
            putfield jdk.tools.jlink.internal.TaskHelper.log:Ljava/io/PrintWriter;
         1: .line 711
            return
        end local 1 // java.io.PrintWriter log
        end local 0 // jdk.tools.jlink.internal.TaskHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/tools/jlink/internal/TaskHelper;
            0    2     1   log  Ljava/io/PrintWriter;
    MethodParameters:
      Name  Flags
      log   

  public void reportError(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // jdk.tools.jlink.internal.TaskHelper this
        start local 1 // java.lang.String key
        start local 2 // java.lang.Object[] args
         0: .line 714
            aload 0 /* this */
            getfield jdk.tools.jlink.internal.TaskHelper.log:Ljava/io/PrintWriter;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield jdk.tools.jlink.internal.TaskHelper.bundleHelper:Ljdk/tools/jlink/internal/TaskHelper$ResourceBundleHelper;
            ldc "error.prefix"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.tools.jlink.internal.TaskHelper$ResourceBundleHelper.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         1: .line 715
            aload 0 /* this */
            getfield jdk.tools.jlink.internal.TaskHelper.bundleHelper:Ljdk/tools/jlink/internal/TaskHelper$ResourceBundleHelper;
            aload 1 /* key */
            aload 2 /* args */
            invokevirtual jdk.tools.jlink.internal.TaskHelper$ResourceBundleHelper.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         2: .line 714
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
         3: .line 716
            return
        end local 2 // java.lang.Object[] args
        end local 1 // java.lang.String key
        end local 0 // jdk.tools.jlink.internal.TaskHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/tools/jlink/internal/TaskHelper;
            0    4     1   key  Ljava/lang/String;
            0    4     2  args  [Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      key   
      args  

  public void reportUnknownError(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // jdk.tools.jlink.internal.TaskHelper this
        start local 1 // java.lang.String message
         0: .line 719
            aload 0 /* this */
            getfield jdk.tools.jlink.internal.TaskHelper.log:Ljava/io/PrintWriter;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield jdk.tools.jlink.internal.TaskHelper.bundleHelper:Ljdk/tools/jlink/internal/TaskHelper$ResourceBundleHelper;
            ldc "error.prefix"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.tools.jlink.internal.TaskHelper$ResourceBundleHelper.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* message */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
         1: .line 720
            return
        end local 1 // java.lang.String message
        end local 0 // jdk.tools.jlink.internal.TaskHelper this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Ljdk/tools/jlink/internal/TaskHelper;
            0    2     1  message  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      message  

  public void warning(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // jdk.tools.jlink.internal.TaskHelper this
        start local 1 // java.lang.String key
        start local 2 // java.lang.Object[] args
         0: .line 723
            aload 0 /* this */
            getfield jdk.tools.jlink.internal.TaskHelper.log:Ljava/io/PrintWriter;
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield jdk.tools.jlink.internal.TaskHelper.bundleHelper:Ljdk/tools/jlink/internal/TaskHelper$ResourceBundleHelper;
            ldc "warn.prefix"
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.tools.jlink.internal.TaskHelper$ResourceBundleHelper.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         1: .line 724
            aload 0 /* this */
            getfield jdk.tools.jlink.internal.TaskHelper.bundleHelper:Ljdk/tools/jlink/internal/TaskHelper$ResourceBundleHelper;
            aload 1 /* key */
            aload 2 /* args */
            invokevirtual jdk.tools.jlink.internal.TaskHelper$ResourceBundleHelper.getMessage:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         2: .line 723
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
         3: .line 725
            return
        end local 2 // java.lang.Object[] args
        end local 1 // java.lang.String key
        end local 0 // jdk.tools.jlink.internal.TaskHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/tools/jlink/internal/TaskHelper;
            0    4     1   key  Ljava/lang/String;
            0    4     2  args  [Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      key   
      args  

  public jdk.tools.jlink.internal.Jlink$PluginsConfiguration getPluginsConfig(java.nio.file.Path, java.util.Map<java.lang.String, java.lang.String>);
    descriptor: (Ljava/nio/file/Path;Ljava/util/Map;)Ljdk/tools/jlink/internal/Jlink$PluginsConfiguration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.tools.jlink.internal.TaskHelper this
        start local 1 // java.nio.file.Path output
        start local 2 // java.util.Map launchers
         0: .line 729
            aload 0 /* this */
            getfield jdk.tools.jlink.internal.TaskHelper.pluginOptions:Ljdk/tools/jlink/internal/TaskHelper$PluginsHelper;
            aload 1 /* output */
            aload 2 /* launchers */
            invokevirtual jdk.tools.jlink.internal.TaskHelper$PluginsHelper.getPluginsConfig:(Ljava/nio/file/Path;Ljava/util/Map;)Ljdk/tools/jlink/internal/Jlink$PluginsConfiguration;
            areturn
        end local 2 // java.util.Map launchers
        end local 1 // java.nio.file.Path output
        end local 0 // jdk.tools.jlink.internal.TaskHelper this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Ljdk/tools/jlink/internal/TaskHelper;
            0    1     1     output  Ljava/nio/file/Path;
            0    1     2  launchers  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
    Exceptions:
      throws java.io.IOException, jdk.tools.jlink.internal.TaskHelper$BadArgs
    Signature: (Ljava/nio/file/Path;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)Ljdk/tools/jlink/internal/Jlink$PluginsConfiguration;
    MethodParameters:
           Name  Flags
      output     
      launchers  

  public java.nio.file.Path getExistingImage();
    descriptor: ()Ljava/nio/file/Path;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.tools.jlink.internal.TaskHelper this
         0: .line 733
            aload 0 /* this */
            getfield jdk.tools.jlink.internal.TaskHelper.pluginOptions:Ljdk/tools/jlink/internal/TaskHelper$PluginsHelper;
            getfield jdk.tools.jlink.internal.TaskHelper$PluginsHelper.existingImage:Ljava/nio/file/Path;
            areturn
        end local 0 // jdk.tools.jlink.internal.TaskHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/tools/jlink/internal/TaskHelper;

  public void showVersion(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.tools.jlink.internal.TaskHelper this
        start local 1 // boolean full
         0: .line 737
            aload 0 /* this */
            getfield jdk.tools.jlink.internal.TaskHelper.log:Ljava/io/PrintWriter;
            aload 0 /* this */
            iload 1 /* full */
            ifeq 1
            ldc "full"
            goto 2
      StackMap locals: jdk.tools.jlink.internal.TaskHelper int
      StackMap stack: java.io.PrintWriter jdk.tools.jlink.internal.TaskHelper
         1: ldc "release"
      StackMap locals: jdk.tools.jlink.internal.TaskHelper int
      StackMap stack: java.io.PrintWriter jdk.tools.jlink.internal.TaskHelper java.lang.String
         2: invokevirtual jdk.tools.jlink.internal.TaskHelper.version:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
         3: .line 738
            return
        end local 1 // boolean full
        end local 0 // jdk.tools.jlink.internal.TaskHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/tools/jlink/internal/TaskHelper;
            0    4     1  full  Z
    MethodParameters:
      Name  Flags
      full  

  public java.lang.String version(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // jdk.tools.jlink.internal.TaskHelper this
        start local 1 // java.lang.String key
         0: .line 741
            ldc "java.version"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String key
        end local 0 // jdk.tools.jlink.internal.TaskHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/tools/jlink/internal/TaskHelper;
            0    1     1   key  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      key   

  static java.lang.ModuleLayer createPluginsLayer(java.util.List<java.nio.file.Path>);
    descriptor: (Ljava/util/List;)Ljava/lang/ModuleLayer;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // java.util.List paths
         0: .line 746
            aload 0 /* paths */
            iconst_0
            anewarray java.nio.file.Path
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.nio.file.Path[]
            astore 1 /* dirs */
        start local 1 // java.nio.file.Path[] dirs
         1: .line 747
            invokestatic java.lang.Runtime.version:()Ljava/lang/Runtime$Version;
            iconst_1
            aload 1 /* dirs */
            invokestatic jdk.internal.module.ModulePath.of:(Ljava/lang/Runtime$Version;Z[Ljava/nio/file/Path;)Ljava/lang/module/ModuleFinder;
            astore 2 /* finder */
        start local 2 // java.lang.module.ModuleFinder finder
         2: .line 748
            invokestatic java.lang.ModuleLayer.boot:()Ljava/lang/ModuleLayer;
            invokevirtual java.lang.ModuleLayer.configuration:()Ljava/lang/module/Configuration;
            astore 3 /* bootConfiguration */
        start local 3 // java.lang.module.Configuration bootConfiguration
         3: .line 750
            aload 3 /* bootConfiguration */
            iconst_0
            anewarray java.nio.file.Path
         4: .line 751
            invokestatic java.lang.module.ModuleFinder.of:([Ljava/nio/file/Path;)Ljava/lang/module/ModuleFinder;
         5: .line 752
            aload 2 /* finder */
         6: .line 753
            invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
         7: .line 751
            invokevirtual java.lang.module.Configuration.resolveAndBind:(Ljava/lang/module/ModuleFinder;Ljava/lang/module/ModuleFinder;Ljava/util/Collection;)Ljava/lang/module/Configuration;
         8: .line 750
            astore 4 /* cf */
        start local 4 // java.lang.module.Configuration cf
         9: .line 754
            invokestatic java.lang.ClassLoader.getSystemClassLoader:()Ljava/lang/ClassLoader;
            astore 5 /* scl */
        start local 5 // java.lang.ClassLoader scl
        10: .line 755
            invokestatic java.lang.ModuleLayer.boot:()Ljava/lang/ModuleLayer;
            aload 4 /* cf */
            aload 5 /* scl */
            invokevirtual java.lang.ModuleLayer.defineModulesWithOneLoader:(Ljava/lang/module/Configuration;Ljava/lang/ClassLoader;)Ljava/lang/ModuleLayer;
        11: areturn
        end local 5 // java.lang.ClassLoader scl
        end local 4 // java.lang.module.Configuration cf
        12: .line 756
      StackMap locals: java.util.List java.nio.file.Path[] java.lang.module.ModuleFinder java.lang.module.Configuration
      StackMap stack: java.lang.Exception
            astore 4 /* ex */
        start local 4 // java.lang.Exception ex
        13: .line 758
            new jdk.tools.jlink.plugin.PluginException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid modules in the plugins path: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* ex */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial jdk.tools.jlink.plugin.PluginException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // java.lang.Exception ex
        end local 3 // java.lang.module.Configuration bootConfiguration
        end local 2 // java.lang.module.ModuleFinder finder
        end local 1 // java.nio.file.Path[] dirs
        end local 0 // java.util.List paths
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   14     0              paths  Ljava/util/List<Ljava/nio/file/Path;>;
            1   14     1               dirs  [Ljava/nio/file/Path;
            2   14     2             finder  Ljava/lang/module/ModuleFinder;
            3   14     3  bootConfiguration  Ljava/lang/module/Configuration;
            9   12     4                 cf  Ljava/lang/module/Configuration;
           10   12     5                scl  Ljava/lang/ClassLoader;
           13   14     4                 ex  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           3    11      12  Class java.lang.Exception
    Signature: (Ljava/util/List<Ljava/nio/file/Path;>;)Ljava/lang/ModuleLayer;
    MethodParameters:
       Name  Flags
      paths  

  private static boolean showsPlugin(jdk.tools.jlink.plugin.Plugin);
    descriptor: (Ljdk/tools/jlink/plugin/Plugin;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.tools.jlink.plugin.Plugin plugin
         0: .line 764
            aload 0 /* plugin */
            invokestatic jdk.tools.jlink.internal.Utils.isDisabled:(Ljdk/tools/jlink/plugin/Plugin;)Z
            ifne 1
            aload 0 /* plugin */
            invokeinterface jdk.tools.jlink.plugin.Plugin.getOption:()Ljava/lang/String;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.tools.jlink.plugin.Plugin plugin
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0  plugin  Ljdk/tools/jlink/plugin/Plugin;
    MethodParameters:
        Name  Flags
      plugin  
}
SourceFile: "TaskHelper.java"
NestMembers:
  jdk.tools.jlink.internal.TaskHelper$BadArgs  jdk.tools.jlink.internal.TaskHelper$Option  jdk.tools.jlink.internal.TaskHelper$Option$Processing  jdk.tools.jlink.internal.TaskHelper$OptionsHelper  jdk.tools.jlink.internal.TaskHelper$PluginOption  jdk.tools.jlink.internal.TaskHelper$PluginsHelper  jdk.tools.jlink.internal.TaskHelper$ResourceBundleHelper
InnerClasses:
  public final Version = java.lang.Runtime$Version of java.lang.Runtime
  public final PluginsConfiguration = jdk.tools.jlink.internal.Jlink$PluginsConfiguration of jdk.tools.jlink.internal.Jlink
  public final BadArgs = jdk.tools.jlink.internal.TaskHelper$BadArgs of jdk.tools.jlink.internal.TaskHelper
  public Option = jdk.tools.jlink.internal.TaskHelper$Option of jdk.tools.jlink.internal.TaskHelper
  public final OptionsHelper = jdk.tools.jlink.internal.TaskHelper$OptionsHelper of jdk.tools.jlink.internal.TaskHelper
  private PluginOption = jdk.tools.jlink.internal.TaskHelper$PluginOption of jdk.tools.jlink.internal.TaskHelper
  private final PluginsHelper = jdk.tools.jlink.internal.TaskHelper$PluginsHelper of jdk.tools.jlink.internal.TaskHelper
  private final ResourceBundleHelper = jdk.tools.jlink.internal.TaskHelper$ResourceBundleHelper of jdk.tools.jlink.internal.TaskHelper