JAL-3384 Added -out option to specify stdout/stderr file. Can start with File.separa...
authorBen Soares <bsoares@dundee.ac.uk>
Mon, 29 Jul 2019 16:21:33 +0000 (17:21 +0100)
committerBen Soares <bsoares@dundee.ac.uk>
Mon, 29 Jul 2019 16:21:33 +0000 (17:21 +0100)
src/jalview/bin/Jalview.java

index 45bb8d1..b259741 100755 (executable)
@@ -199,12 +199,26 @@ public class Jalview
   {
     System.setSecurityManager(null);
 
+    ArgsParser aparser = new ArgsParser(args);
     // set stdout and stderr to file if launched by getdown
     String appdirString = System.getProperty("getdownappdir");
     if (appdirString != null)
     {
-      String logFilename = "output.log";
-      File logFile = new File(appdirString, logFilename);
+
+      String logFilename = aparser.getValue("out");
+      String parent = appdirString;
+      if (logFilename == null)
+      {
+        logFilename = "output.log";
+      }
+      else
+      {
+        if (logFilename.startsWith(File.separator))
+        {
+          parent = null;
+        }
+      }
+      File logFile = new File(parent, logFilename);
       if (logFile.exists())
       {
         logFile.delete();
@@ -237,7 +251,6 @@ public class Jalview
     // report Jalview version
     Cache.loadBuildProperties(true);
 
-    ArgsParser aparser = new ArgsParser(args);
     boolean headless = false;
 
     if (aparser.contains("help") || aparser.contains("h"))