Versions Compared

Key

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

The following environment variable settings have proven valuable.

Implement these as appropriate for your platform. What is shown here is Linux Bash syntax. MS-Windows users will use the environment variables setting dialog available in the control panel.

Code Block
export JAVA_OPTS="-Dsun.io.serialization.extendedDebugInfo=true -Xmx5G -Xms2m"
export SBT_OPTS="$JAVA_OPTS"
export DAFFODIL_JAVA_OPTS="$JAVA_OPTS"
export TMP=/tmp # only needed on linux, only if neither TMP nor TEMP_DIR is defined already

The -Xms2m increases the stack size - the scala compiler is highly recursive and uses deeper stacks than conventional Java programs generally use.

The -Xmx5G allows the JVM to use as much as 10 Gig of RAM - adjust this depending on your RAM size. 5Gig is probably minimum (as of release 2.0.0 of Daffodil)

The JAVA_OPTS, SBT_OPTS, and DAFFODIL_JAVA_OPTS respectively set these flags for the java command, the sbt command, and the daffodil command (aka daffodil CLI).

On MS-Windows it may be necessary to add the java JDK "bin" directory to the PATH. Find where the Java JDK is installed (usually under C:\Program Files\Java\jdk...\bin), and put the bin directory on PATH.

On MS-Windows TMP is generally defined automatically. It is only on some linux systems that there may be no default definition for TMP or TEMP_DIR.Page moved to: https://cwiki.apache.org/confluence/display/DAFFODIL/Java+Setup+and+Notes