The JamaicaVM tool chain provides all the tools required to process Java source code into an executable format on the target system. Figure 3-1 provides an overview over this tool chain.
JamaicaVM uses Java source code files [Gosling00] as input to first create platform independent Java class files [Lindholm99] in the same way classical Java implementations do. JamaicaVM provides its own Java bytecode compiler, jamaicac, to do this translation. jamaicac accepts java 1.4 compatible source code as input and create Java 1.4 compatible class files. A more detailed description of jamaicac will be given in Chapter 4.
We recommend using jamaicac. However, it is also possible to use your favorite Java-source to bytecode compiler, including JDK 5's javac command, as long as you ensure that the bootclasspath is set properly to the Jamaica boot classes (located in the classes sub-directory in the Jamaica installation directory). JamaicaVM 3.2 supports Java 5 compatible class files, but it does not provide support for any methods or classes in the standard library that were added with JDK 5.