\r
import jalview.gui.*;\r
\r
-import org.apache.log4j.*;\r
-\r
import javax.swing.*;\r
\r
import java.util.Vector;\r
*/\r
public class Jalview\r
{\r
- /**\r
- * Initialises the Apache Axis logger\r
- */\r
- public static Logger log;\r
- private static void initLogger()\r
- {\r
- Logger laxis = Logger.getLogger("org.apache.axis");\r
- Logger lcastor = Logger.getLogger("org.exolab.castor");\r
- log = Logger.getLogger("jalview.bin.Jalview");\r
-\r
- laxis.setLevel(Level.toLevel(Cache.getDefault("logs.Axis.Level", Level.INFO.toString())));\r
- lcastor.setLevel(Level.toLevel(Cache.getDefault("logs.Castor.Level", Level.INFO.toString())));\r
- log.setLevel(Level.toLevel(Cache.getDefault("logs.Jalview.level", Level.INFO.toString())));\r
-\r
- ConsoleAppender ap = new ConsoleAppender(new SimpleLayout(),\r
- "System.err");\r
- ap.setName("JalviewLogger");\r
-\r
- laxis.addAppender(ap);\r
- lcastor.addAppender(ap);\r
- log.addAppender(ap);\r
- }\r
\r
/**\r
* main class for Jalview application\r
System.out.println("Usage: jalview -open [FILE] [OUTPUT_FORMAT] [OUTPUT_FILE]\n\n"\r
+"-nodisplay\tRun Jalview without User Interface.\n"\r
+"-props FILE\tUse the given Jalview properties file instead of users default.\n"\r
- +"-groups FILE\tUse the given file to mark groups on the alignment. \nGroups file is in the following tab delimited format\n"\r
- +"TEXT<tab>SEQUENCE_ID<tab>SEQUENCE_INDEX<tab>START_RESIDUE<tab>END_RESIDUE<tab>COLOUR\n"\r
+ +"-groups FILE\tUse the given file to mark groups on the alignment."\r
+ +"\nThe first lines of the groups file lists the GroupName and GroupColours"\r
+ +" to be used in the alignment. Use the GROUPNAME label for each of your sequences. "\r
+ +"\nGROUPNAME<tab>GROUPCOLOUR\n"\r
+ +"TEXT<tab>SEQUENCE_ID<tab>SEQUENCE_INDEX<tab>START_RESIDUE<tab>END_RESIDUE<tab>GROUPNAME\n"\r
+"SequenceID is used in preference to SequenceIndex if both are provided.\n"\r
+"Enter ID_NOT_SPECIFIED for SEQUENCE_ID or -1 for SEQUENCE_INDEX if unknown.\n"\r
+"COLOUR can be hexadecimal RGB or 'red', 'blue' etc.\n\n"\r
\r
\r
if (aparser.contains("nodisplay"))\r
+ {\r
System.setProperty("java.awt.headless", "true");\r
-\r
+ }\r
if (System.getProperty("java.awt.headless") != null\r
&& System.getProperty("java.awt.headless").equals("true"))\r
{\r
headless = true;\r
}\r
\r
- Cache.loadProperties(aparser.getValue("props"));\r
-\r
- try\r
- {\r
- initLogger();\r
- }\r
- catch (Exception e)\r
- {\r
- System.err.println("Problems initializing the log4j system\n");\r
- }\r
+ try\r
+ {\r
+ Cache.initLogger();\r
+ }\r
+ catch (java.lang.NoClassDefFoundError error)\r
+ {\r
+ error.printStackTrace();\r
+ System.out.println(\r
+ "\nEssential logging libraries not found."\r
+ +"\nUse: java -Djava.ext.dirs=$PATH_TO_LIB$ jalview.bin.Jalview");\r
+ System.exit(0);\r
+ }\r
\r
+ Cache.loadProperties(aparser.getValue("props"));\r
\r
Desktop desktop = null;\r
if( !headless )\r
if (! (new java.io.File(file)).exists())\r
{\r
System.out.println("Can't find " + file);\r
- System.exit(1);\r
+ if(headless)\r
+ System.exit(1);\r
}\r
}\r
\r
desktop.LoadFile(file, protocol, format);\r
}\r
}\r
-\r
-\r
- if (desktop==null)\r
- System.exit(0);\r
}\r
}\r
\r