X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fbin%2FJalview.java;fp=src%2Fjalview%2Fbin%2FJalview.java;h=a988a09d3453b389dff1798e8e36299cb9bfb0e4;hb=0de37d1a047209510bab82225109ae2a47931f79;hp=0ec98893703a52a5db34f31c3a7abd5c5421fc38;hpb=d6eab72955158d1e070b45dfd93e55c64a47ff86;p=jalview.git diff --git a/src/jalview/bin/Jalview.java b/src/jalview/bin/Jalview.java index 0ec9889..a988a09 100755 --- a/src/jalview/bin/Jalview.java +++ b/src/jalview/bin/Jalview.java @@ -58,6 +58,7 @@ import com.threerings.getdown.util.LaunchUtil; //import edu.stanford.ejalbert.launching.IBrowserLaunching; import groovy.lang.Binding; import groovy.util.GroovyScriptEngine; +import jalview.bin.ArgParser.Arg; import jalview.ext.so.SequenceOntology; import jalview.gui.AlignFrame; import jalview.gui.Desktop; @@ -324,10 +325,22 @@ public class Jalview // report Jalview version Cache.loadBuildProperties(true); + // old ArgsParser ArgsParser aparser = new ArgsParser(args); boolean headless = false; + try + { + Console.initLogger(); + } catch (NoClassDefFoundError error) + { + error.printStackTrace(); + System.out.println("\nEssential logging libraries not found." + + "\nUse: java -classpath \"$PATH_TO_LIB$/*:$PATH_TO_CLASSES$\" jalview.bin.Jalview"); + System.exit(0); + } + String usrPropsFile = aparser.getValue("props"); Cache.loadProperties(usrPropsFile); // must do this // before @@ -337,6 +350,31 @@ public class Jalview "CMD [-props " + usrPropsFile + "] executed successfully!"); } + // set log level from cache properties + Console.setLogLevel(Cache.getDefault(Cache.JALVIEWLOGLEVEL, "INFO")); + + // new ArgParser + ArgParser argparser = new ArgParser(args); // do this after + // Console.initLogger, but TODO + // want --props before then + // CATCH22 + + if (argparser.isSet(Arg.HEADLESS)) + headless = argparser.getBool(Arg.HEADLESS); + boolean commandsSuccess = Commands.processArgs(argparser, headless); + if (commandsSuccess) + { + Console.info("Successfully completed commands"); + if (headless) + System.exit(0); + } + else + { + Console.warn("Error when running commands"); + if (headless) + System.exit(1); + } + if (!Platform.isJS()) /** * Java only @@ -344,13 +382,18 @@ public class Jalview * @j2sIgnore */ { + if (argparser.isSet(Arg.HEADLESS)) + { + headless = argparser.getBool(Arg.HEADLESS); + } + if (aparser.contains("help") || aparser.contains("h")) { showUsage(); System.exit(0); } - if (aparser.contains("nodisplay") || aparser.contains("nogui") - || aparser.contains("headless")) + if (headless || aparser.contains("nodisplay") + || aparser.contains("nogui") || aparser.contains("headless")) { System.setProperty("java.awt.headless", "true"); headless = true; @@ -405,19 +448,6 @@ public class Jalview System.setProperty("http.agent", "Jalview Desktop/" + Cache.getDefault("VERSION", "Unknown")); - try - { - Console.initLogger(); - } catch ( - - NoClassDefFoundError error) - { - error.printStackTrace(); - System.out.println("\nEssential logging libraries not found." - + "\nUse: java -classpath \"$PATH_TO_LIB$/*:$PATH_TO_CLASSES$\" jalview.bin.Jalview"); - System.exit(0); - } - desktop = null; setLookAndFeel();