@@ -145,7 +145,7 @@ public class DrJava {
145145 private static volatile File _propertiesFile = DEFAULT_PROPERTIES_FILE ;
146146
147147 /** Configuration object with all customized and default values. Initialized from _propertiesFile. */
148- private static volatile FileConfiguration _config = _initConfig () ;
148+ private static volatile FileConfiguration _config ;
149149
150150 /** Returns the properties file used by the configuration object. */
151151 public static File getPropertiesFile () { return _propertiesFile ; }
@@ -403,7 +403,6 @@ static boolean handleCommandLineArgs(String[] args) {
403403 }
404404 // arg.length > i+1 implying args list incudes config file name and perhaps files to open
405405 setPropertiesFile (args [argIndex ++]);
406- _config = _initConfig (); // read specified .djrava file into _config
407406 }
408407
409408 else if (arg .startsWith ("-X" ) || arg .startsWith ("-D" )) {
@@ -420,6 +419,13 @@ else if (arg.equals("-delete-after-restart")) {
420419 deleteAfterRestart .delete ();
421420 }
422421
422+ else if (arg .equals ("-jll" )) {
423+ String [] argsForJLL = new String [args .length -argIndex ];
424+ System .arraycopy (args , argIndex , argsForJLL , 0 , argsForJLL .length );
425+ edu .rice .cs .javalanglevels .LanguageLevelConverter .main (argsForJLL );
426+ System .exit (0 );
427+ }
428+
423429 else if (arg .equals ("-help" ) || arg .equals ("-?" )) {
424430 displayUsage ();
425431 return false ;
@@ -431,6 +437,8 @@ else if (arg.equals("-help") || arg.equals("-?")) {
431437 }
432438 }
433439
440+ _config = _initConfig (); // read specified .djrava file into _config
441+
434442 if ((!("" .equals (getConfig ().getSetting (MASTER_JVM_XMX )))) &&
435443 (!(edu .rice .cs .drjava .config .OptionConstants .heapSizeChoices .get (0 ).equals (getConfig ().getSetting (MASTER_JVM_XMX ))))) {
436444 _jvmArgs .add ("-Xmx" + getConfig ().getSetting (MASTER_JVM_XMX ).trim () + "M" );
@@ -472,6 +480,7 @@ static void displayUsage() {
472480 System .out .println (" -help | -? print this help message" );
473481 System .out .println (" -X<jvmOption> specify a JVM configuration option for the master DrJava JVM" );
474482 System .out .println (" -D<name>[=<value>] set a Java property for the master DrJava JVM" );
483+ System .out .println (" -jll [ARGS] invoke the Java Language Level converter, specify files in ARGS" );
475484 }
476485
477486 /** Switches the config object to use a custom config file. Ensures that Java source files aren't
0 commit comments