public class com.sun.tools.internal.xjc.XJCFacade
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.tools.internal.xjc.XJCFacade
  super_class: java.lang.Object
{
  private static final java.lang.String JDK6_REQUIRED;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "XJC requires JDK 6.0 or later. Please download it from http://www.oracle.com/technetwork/java/javase/downloads"

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.internal.xjc.XJCFacade this
         0: .line 42
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.sun.tools.internal.xjc.XJCFacade this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/internal/xjc/XJCFacade;

  public static void main(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=11, args_size=1
        start local 0 // java.lang.String[] args
         0: .line 47
            ldc "2.0"
            astore 1 /* v */
        start local 1 // java.lang.String v
         1: .line 49
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 7
         3: .line 50
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 0 /* args */
            iload 2 /* i */
            aaload
            ldc "-source"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
         4: .line 51
            iload 2 /* i */
            iconst_1
            iadd
            aload 0 /* args */
            arraylength
            if_icmpge 6
         5: .line 52
            aload 0 /* args */
            iload 2 /* i */
            iconst_1
            iadd
            aaload
            invokestatic com.sun.tools.internal.xjc.XJCFacade.parseVersion:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* v */
         6: .line 49
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 2 /* i */
            aload 0 /* args */
            arraylength
            if_icmplt 3
        end local 2 // int i
         8: .line 57
            invokestatic com.sun.tools.internal.xjc.SecureLoader.getContextClassLoader:()Ljava/lang/ClassLoader;
            astore 2 /* oldContextCl */
        start local 2 // java.lang.ClassLoader oldContextCl
         9: .line 59
            ldc Lcom/sun/tools/internal/xjc/XJCFacade;
            invokestatic com.sun.tools.internal.xjc.SecureLoader.getClassClassLoader:(Ljava/lang/Class;)Ljava/lang/ClassLoader;
            aload 1 /* v */
            invokestatic com.sun.tools.internal.xjc.ClassLoaderBuilder.createProtectiveClassLoader:(Ljava/lang/ClassLoader;Ljava/lang/String;)Ljava/lang/ClassLoader;
            astore 3 /* cl */
        start local 3 // java.lang.ClassLoader cl
        10: .line 60
            aload 3 /* cl */
            invokestatic com.sun.tools.internal.xjc.SecureLoader.setContextClassLoader:(Ljava/lang/ClassLoader;)V
        11: .line 61
            aload 3 /* cl */
            ldc "com.sun.tools.internal.xjc.Driver"
            invokevirtual java.lang.ClassLoader.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
            astore 4 /* driver */
        start local 4 // java.lang.Class driver
        12: .line 62
            aload 4 /* driver */
            ldc "main"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc [Ljava/lang/String;
            aastore
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            astore 5 /* mainMethod */
        start local 5 // java.lang.reflect.Method mainMethod
        13: .line 64
            aload 5 /* mainMethod */
            aconst_null
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* args */
            aastore
            invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 65
            goto 53
      StackMap locals: java.lang.String[] java.lang.String java.lang.ClassLoader java.lang.ClassLoader java.lang.Class java.lang.reflect.Method
      StackMap stack: java.lang.reflect.InvocationTargetException
        15: astore 6 /* e */
        start local 6 // java.lang.reflect.InvocationTargetException e
        16: .line 66
            aload 6 /* e */
            invokevirtual java.lang.reflect.InvocationTargetException.getTargetException:()Ljava/lang/Throwable;
            ifnull 53
        17: .line 67
            aload 6 /* e */
            invokevirtual java.lang.reflect.InvocationTargetException.getTargetException:()Ljava/lang/Throwable;
            athrow
        end local 6 // java.lang.reflect.InvocationTargetException e
        end local 5 // java.lang.reflect.Method mainMethod
        end local 4 // java.lang.Class driver
        end local 3 // java.lang.ClassLoader cl
        18: .line 70
      StackMap locals: java.lang.String[] java.lang.String java.lang.ClassLoader
      StackMap stack: java.lang.UnsupportedClassVersionError
            pop
        19: .line 71
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "XJC requires JDK 6.0 or later. Please download it from http://www.oracle.com/technetwork/java/javase/downloads"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        20: .line 73
            invokestatic com.sun.tools.internal.xjc.SecureLoader.getContextClassLoader:()Ljava/lang/ClassLoader;
            astore 8 /* cl */
        start local 8 // java.lang.ClassLoader cl
        21: .line 74
            aload 2 /* oldContextCl */
            invokestatic com.sun.tools.internal.xjc.SecureLoader.setContextClassLoader:(Ljava/lang/ClassLoader;)V
        22: .line 77
            goto 34
        23: .line 78
      StackMap locals: java.lang.String[] java.lang.String java.lang.ClassLoader top top top top top java.lang.ClassLoader
      StackMap stack:
            aload 8 /* cl */
            instanceof java.io.Closeable
            ifeq 26
        24: .line 80
            aload 8 /* cl */
            checkcast java.io.Closeable
            invokeinterface java.io.Closeable.close:()V
        25: .line 81
            goto 33
        26: .line 82
      StackMap locals:
      StackMap stack:
            aload 8 /* cl */
            instanceof java.net.URLClassLoader
            ifeq 33
        27: .line 86
            aload 2 /* oldContextCl */
            ldc "sun.misc.ClassLoaderUtil"
            invokevirtual java.lang.ClassLoader.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
            astore 9 /* clUtil */
        start local 9 // java.lang.Class clUtil
        28: .line 87
            aload 9 /* clUtil */
            ldc "releaseLoader"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/net/URLClassLoader;
            aastore
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            astore 10 /* release */
        start local 10 // java.lang.reflect.Method release
        29: .line 88
            aload 10 /* release */
            aconst_null
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 8 /* cl */
            aastore
            invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 10 // java.lang.reflect.Method release
        end local 9 // java.lang.Class clUtil
        30: .line 89
            goto 33
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
        31: pop
        32: .line 91
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "XJC requires JDK 6.0 or later. Please download it from http://www.oracle.com/technetwork/java/javase/downloads"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        33: .line 95
      StackMap locals:
      StackMap stack:
            aload 8 /* cl */
            invokestatic com.sun.tools.internal.xjc.SecureLoader.getParentClassLoader:(Ljava/lang/ClassLoader;)Ljava/lang/ClassLoader;
            astore 8 /* cl */
        34: .line 77
      StackMap locals:
      StackMap stack:
            aload 8 /* cl */
            ifnull 68
            aload 2 /* oldContextCl */
            aload 8 /* cl */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 23
        end local 8 // java.lang.ClassLoader cl
        35: goto 68
        36: .line 72
      StackMap locals: java.lang.String[] java.lang.String java.lang.ClassLoader
      StackMap stack: java.lang.Throwable
            astore 7
        37: .line 73
            invokestatic com.sun.tools.internal.xjc.SecureLoader.getContextClassLoader:()Ljava/lang/ClassLoader;
            astore 8 /* cl */
        start local 8 // java.lang.ClassLoader cl
        38: .line 74
            aload 2 /* oldContextCl */
            invokestatic com.sun.tools.internal.xjc.SecureLoader.setContextClassLoader:(Ljava/lang/ClassLoader;)V
        39: .line 77
            goto 51
        40: .line 78
      StackMap locals: java.lang.String[] java.lang.String java.lang.ClassLoader top top top top java.lang.Throwable java.lang.ClassLoader
      StackMap stack:
            aload 8 /* cl */
            instanceof java.io.Closeable
            ifeq 43
        41: .line 80
            aload 8 /* cl */
            checkcast java.io.Closeable
            invokeinterface java.io.Closeable.close:()V
        42: .line 81
            goto 50
        43: .line 82
      StackMap locals:
      StackMap stack:
            aload 8 /* cl */
            instanceof java.net.URLClassLoader
            ifeq 50
        44: .line 86
            aload 2 /* oldContextCl */
            ldc "sun.misc.ClassLoaderUtil"
            invokevirtual java.lang.ClassLoader.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
            astore 9 /* clUtil */
        start local 9 // java.lang.Class clUtil
        45: .line 87
            aload 9 /* clUtil */
            ldc "releaseLoader"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/net/URLClassLoader;
            aastore
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            astore 10 /* release */
        start local 10 // java.lang.reflect.Method release
        46: .line 88
            aload 10 /* release */
            aconst_null
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 8 /* cl */
            aastore
            invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 10 // java.lang.reflect.Method release
        end local 9 // java.lang.Class clUtil
        47: .line 89
            goto 50
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
        48: pop
        49: .line 91
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "XJC requires JDK 6.0 or later. Please download it from http://www.oracle.com/technetwork/java/javase/downloads"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        50: .line 95
      StackMap locals:
      StackMap stack:
            aload 8 /* cl */
            invokestatic com.sun.tools.internal.xjc.SecureLoader.getParentClassLoader:(Ljava/lang/ClassLoader;)Ljava/lang/ClassLoader;
            astore 8 /* cl */
        51: .line 77
      StackMap locals:
      StackMap stack:
            aload 8 /* cl */
            ifnull 52
            aload 2 /* oldContextCl */
            aload 8 /* cl */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 40
        end local 8 // java.lang.ClassLoader cl
        52: .line 97
      StackMap locals:
      StackMap stack:
            aload 7
            athrow
        53: .line 73
      StackMap locals: java.lang.String[] java.lang.String java.lang.ClassLoader
      StackMap stack:
            invokestatic com.sun.tools.internal.xjc.SecureLoader.getContextClassLoader:()Ljava/lang/ClassLoader;
            astore 8 /* cl */
        start local 8 // java.lang.ClassLoader cl
        54: .line 74
            aload 2 /* oldContextCl */
            invokestatic com.sun.tools.internal.xjc.SecureLoader.setContextClassLoader:(Ljava/lang/ClassLoader;)V
        55: .line 77
            goto 67
        56: .line 78
      StackMap locals: java.lang.String[] java.lang.String java.lang.ClassLoader top top top top top java.lang.ClassLoader
      StackMap stack:
            aload 8 /* cl */
            instanceof java.io.Closeable
            ifeq 59
        57: .line 80
            aload 8 /* cl */
            checkcast java.io.Closeable
            invokeinterface java.io.Closeable.close:()V
        58: .line 81
            goto 66
        59: .line 82
      StackMap locals:
      StackMap stack:
            aload 8 /* cl */
            instanceof java.net.URLClassLoader
            ifeq 66
        60: .line 86
            aload 2 /* oldContextCl */
            ldc "sun.misc.ClassLoaderUtil"
            invokevirtual java.lang.ClassLoader.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
            astore 9 /* clUtil */
        start local 9 // java.lang.Class clUtil
        61: .line 87
            aload 9 /* clUtil */
            ldc "releaseLoader"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/net/URLClassLoader;
            aastore
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            astore 10 /* release */
        start local 10 // java.lang.reflect.Method release
        62: .line 88
            aload 10 /* release */
            aconst_null
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 8 /* cl */
            aastore
            invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 10 // java.lang.reflect.Method release
        end local 9 // java.lang.Class clUtil
        63: .line 89
            goto 66
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
        64: pop
        65: .line 91
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            ldc "XJC requires JDK 6.0 or later. Please download it from http://www.oracle.com/technetwork/java/javase/downloads"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        66: .line 95
      StackMap locals:
      StackMap stack:
            aload 8 /* cl */
            invokestatic com.sun.tools.internal.xjc.SecureLoader.getParentClassLoader:(Ljava/lang/ClassLoader;)Ljava/lang/ClassLoader;
            astore 8 /* cl */
        67: .line 77
      StackMap locals:
      StackMap stack:
            aload 8 /* cl */
            ifnull 68
            aload 2 /* oldContextCl */
            aload 8 /* cl */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 56
        end local 8 // java.lang.ClassLoader cl
        68: .line 98
      StackMap locals: java.lang.String[] java.lang.String java.lang.ClassLoader
      StackMap stack:
            return
        end local 2 // java.lang.ClassLoader oldContextCl
        end local 1 // java.lang.String v
        end local 0 // java.lang.String[] args
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   69     0          args  [Ljava/lang/String;
            1   69     1             v  Ljava/lang/String;
            2    8     2             i  I
            9   69     2  oldContextCl  Ljava/lang/ClassLoader;
           10   18     3            cl  Ljava/lang/ClassLoader;
           12   18     4        driver  Ljava/lang/Class<*>;
           13   18     5    mainMethod  Ljava/lang/reflect/Method;
           16   18     6             e  Ljava/lang/reflect/InvocationTargetException;
           21   35     8            cl  Ljava/lang/ClassLoader;
           38   52     8            cl  Ljava/lang/ClassLoader;
           54   68     8            cl  Ljava/lang/ClassLoader;
           28   30     9        clUtil  Ljava/lang/Class<*>;
           45   47     9        clUtil  Ljava/lang/Class<*>;
           61   63     9        clUtil  Ljava/lang/Class<*>;
           29   30    10       release  Ljava/lang/reflect/Method;
           46   47    10       release  Ljava/lang/reflect/Method;
           62   63    10       release  Ljava/lang/reflect/Method;
      Exception table:
        from    to  target  type
          13    14      15  Class java.lang.reflect.InvocationTargetException
           9    18      18  Class java.lang.UnsupportedClassVersionError
          27    30      31  Class java.lang.ClassNotFoundException
           9    20      36  any
          44    47      48  Class java.lang.ClassNotFoundException
          60    63      64  Class java.lang.ClassNotFoundException
    Exceptions:
      throws java.lang.Throwable
    MethodParameters:
      Name  Flags
      args  

  public static java.lang.String parseVersion(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String version
         0: .line 102
            ldc "2.0"
            areturn
        end local 0 // java.lang.String version
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  version  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      version  
}
SourceFile: "XJCFacade.java"