...
Note: You will likely need to set available JVM memory larger. For example, on a 64-bit Linux system, I have this in my .bashrc:
export JAVA_OPTS="-XX:MaxPermSize=512m -Xmx6000m -Xms40m -Xss2m"
This might seem generous (6Gig!) , and the more critical thing is the MaxPermSize, which defaults to much too smallThe Xss2m option makes the default stack size larger.
Compiling in eclipse
There are IDE's and eclipse plug-ins that can be used to build daffodil. See:
http://www.scala-lang.org/node/91
Some time-dependent information: The As of November 2011, the Eclipse Indigo IDE (also known as version 3.7) and the current Scala plug-in for it (release 29, 2.0.0-beta, with this Eclipse update site: http://download.scala-ide.org/releases-29/2.0.0-beta), work for daffodil. They are robust enough to be useful, though there are some bugs still, and one must occasionally exit and re-enter Eclipse.
Tricks/Tips: You must increase the memory available, and specifically, the stack-size that Eclipse's JVM will use. This is done by editing eclipse.ini in the eclipse install directory. Below is an example of an eclipse.ini that works.
The first line "-clean" slows down starting Eclipse, but seems to be helpful given the current state of the Scala plug-in. Your mileage may vary. The key changes are the last 3 lines. These set the minimum, maximum, and stack size to more reasonable values than the defaults. You need quite a bit of memory to use this IDE with Scala for Daffodilkey change is the last line. You need to enlarge this stack size option from the default because the scala compiler is highly recursive, as is the Daffodil schema compiler.
It is also very helpful when dealing with XML files to load the XML and XML-schema tools that are available in Eclipse.
Code Block |
---|
-clean -startup plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar --launcher.library plugins/org.eclipse.equinox.launcher.gtk.linux.x86_1.1.100.v20110505 -showsplash org.eclipse.platform --launcher.XXMaxPermSize 256m --launcher.defaultAction openFile -vmargs -Xms1000m -Xmx1250m -Xss2m |
Eclipse XML Setup
Getting eclipse to validate DFDL Schemas using its XML validation capabilities requires some configuration. Without this you will get hundreds (at least) of XML and XML Schema validation errors from the daffodil code base.
...