1 33 34 package edu.rice.cs.drjava.model.compiler; 35 36 import java.io.File ; 37 import java.net.URLClassLoader ; 38 import java.net.URL ; 39 import java.net.MalformedURLException ; 40 41 import edu.rice.cs.drjava.DrJava; 42 import edu.rice.cs.drjava.config.OptionConstants; 43 import edu.rice.cs.drjava.config.FileOption; 44 45 import edu.rice.cs.util.FileOps; 46 47 51 public class Javac160FromSetLocation extends CompilerProxy implements OptionConstants { 52 53 55 private static final String VERSION = System.getProperty("java.specification.version"); 56 57 58 public Javac160FromSetLocation() { 59 super("edu.rice.cs.drjava.model.compiler.Javac160Compiler", _getClassLoader()); 60 } 61 62 private static ClassLoader _getClassLoader() { 63 64 File loc = DrJava.getConfig().getSetting(JAVAC_LOCATION); 65 if (loc == FileOption.NULL_FILE) throw new RuntimeException ("javac location not set"); 66 67 try { 68 URL url = FileOps.toURL(loc); 70 return new URLClassLoader (new URL [] { url }); 71 } 72 catch (MalformedURLException e) { throw new RuntimeException ("malformed url exception"); } 73 } 74 75 public boolean isAvailable() { return VERSION.equals("1.6") && super.isAvailable(); } 76 public String getName() { return "javac 1.6.0"; } 77 } | Popular Tags |