# Running Nuxeo DM with Java 6

Nuxeo DM has been compiled against Java 5 but is runnable with Java Development Kit 6 (which is actually the recommended version).

When running under Java 6, the startup script applies some fixes, moving for example the scripting API out of the classpath (as it's already provided by Java6).

# Building Nuxeo DM

The JDK 5 compiled binary is our primary/recommended binary distribution. It has undergone rigorous testing and can run under both a Java 5 or a Java 6 JDK.

However, you can also build with Sun JDK 6 and then run under JDK 6 only.

# Details for experts

If you encounter problems using JBoss with a Sun Java 6 runtime, you may want to set -Dsun.lang.ClassLoader.allowArraySyntax=true, as described in JBAS-4491. Other potential problems under a Java 6 runtime include:

- ORB getting prematurely destroyed when using Sun JDK 6 (see Sun Bug ID:6520484)
- Unimplemented methods in Hibernate for JDK6 interfaces.

When JBossAS 4.2.3 is compiled with Java 6, support for the extended JDBC 4 API is included in the binary, however this can only be used under a Java 6 runtime. In this case no manual configuration steps are necessary. It should be noted however that the Java 6 compiled distribution of JBoss AS 4.2.3.GA is still in experimental stage.