home *** CD-ROM | disk | FTP | other *** search
- package javax.tools;
-
- import java.io.File;
- import java.net.MalformedURLException;
- import java.net.URL;
- import java.net.URLClassLoader;
-
- class ToolProvider$Lazy {
- private static final String defaultJavaCompilerName = "com.sun.tools.javac.api.JavacTool";
- private static final String[] defaultToolsLocation = new String[]{"lib", "tools.jar"};
- static final Class<? extends JavaCompiler> compilerClass;
-
- private static Class<?> findClass() throws MalformedURLException, ClassNotFoundException {
- try {
- return enableAsserts(Class.forName("com.sun.tools.javac.api.JavacTool", false, (ClassLoader)null));
- } catch (ClassNotFoundException var5) {
- File var0 = new File(System.getProperty("java.home"));
- if (var0.getName().equalsIgnoreCase("jre")) {
- var0 = var0.getParentFile();
- }
-
- for(String var4 : defaultToolsLocation) {
- var0 = new File(var0, var4);
- }
-
- URL[] var6 = new URL[]{var0.toURI().toURL()};
- URLClassLoader var7 = URLClassLoader.newInstance(var6);
- ((ClassLoader)var7).setPackageAssertionStatus("com.sun.tools.javac", true);
- return Class.forName("com.sun.tools.javac.api.JavacTool", false, var7);
- }
- }
-
- private static Class<?> enableAsserts(Class<?> var0) {
- try {
- ClassLoader var1 = var0.getClassLoader();
- if (var1 != null) {
- var1.setPackageAssertionStatus("com.sun.tools.javac", true);
- }
- } catch (SecurityException var2) {
- }
-
- return var0;
- }
-
- static {
- Class var0 = null;
-
- try {
- var0 = findClass().asSubclass(JavaCompiler.class);
- } catch (Throwable var2) {
- }
-
- compilerClass = var0;
- }
- }
-