Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Running a Specified Class's Main

You can also run the main main method from any class in the jar.

...

  • It must be marked as public or it will not be accessible.
  • It must have a public static method called main (as shown above).
  • The main method has an array of strings as input (with the command line arguments)

...

DirectoryDescription
analysisanalysis steering files (includes analysis template)
broken broken steering files that (which may be removed soon!)
calibration calibration steering files (not really used currently)
monitoring steering files designed to be run in the monitoring application
production production steering including event skimming configurations filtering and Data Quality
readoutreadout simulation steering to be run on MC data from SLIC
recon production reconstruction steering
users user steering files (organized into sub-directories by user name)

...

All variables defined in the XML steering files must be resolved from the command line or an error will occur.

System Properties

The command line tools are may be affected by different environment settings which are set through some Java system properties.

This is a table of the system properties that can affect HPS Java.

NameDescriptionValues
java.util.logging.config.fileJava logging config filedefined described in logging package doc
java.util.logging.config.classJava logging config initialization classdefined described in logging package  doc doc
hep.aida.IAnalysisFactoryAIDA backend factory class
  • hep.aida.ref.AnalysisFactory - default
  • hep.aida.jfree.AnalysisFactory - JFree backend
  • hep.aida.ref.BatchAnalysisFactory - batch mode (no plot display)
disableSvtAlignmentConstantsDisables reading of SVT alignment constants from conditions dbtrue
org.hps.conditions.connection.fileProperties file with connection settings for conditions database 
org.hps.conditions.connection.resourceResource that points to properties file with connection settings for conditions database
  • /org/hps/conditions/config/jlab_connection.prop - default connection

...

  • A full classpath is created in the script so it is not necessary to use the distribution jar (meaning a recompilation of distribution is not necessary to pickup changes).
  • Reasonable JVM options are included set such as setting the min heap size.
  • Logging is configured automatically by loading in a default logging properties file.
  • Less typing of Java boilerplate commands ("java -jar" etc.).
  • You do not need to know the corresponding class's full name to run its command line utility.

...

The full list of Java system properties to be used should be included in this variable. You  You should not set set the options -Xmx or -Djava.util.logging.config.class, as they these are already set by the run scriptseach script.

Logging and Debugging

Logging Config

...