Version 19 (modified by zzz, 9 years ago) (diff)


Java JRE and SDK Support and Performance

Please help fill this out

JRE/SDK Works Compiles Performance
Sun 5 yes yes good
Sun 6 yes yes good
Sun 7
GCJ (compiled to C) yes all but console very poor
GCJ-JRE (gij-4.4) yes yes for I2P releases through 0.8, if you supply the Pack200 jar - see note below poor, not recommended
Iced Tea 5
Iced Tea 6 yes yes (no on PPC "1.6.0_18" OpenJDK Runtime Environment (IcedTea6 1.8) - missing Pack200 - see http://forum.i2p/viewtopic.php?t=4655 ) - see note below good
Iced Tea 7 yes yes good
Open JDK 5
Open JDK 6
Open JDK 7
IBM Reportedly does not http://zzz.i2p/topics/577
Android no yes (core and router) hopeless
Oracle/BEA JRockit 1.6 yes yes good
Apache Harmony 5 no - bug in Deflater fixed with workaround in 0.7.12-15; reports huge clock skews in UDP Transport; works with TCP only? slow
Apache Harmony 6
JamVM n/a


<smeghead> icedtea is openjdk with the non-GPL-compatible parts replaced, and openjdk is sun's jdk with bits relicensed

<smeghead> for most purposes you shouldn't notice any difference between sun, openjdk, and icedtea

<smeghead> however, icedtea offers some alternatives to hotspot which can give worse or better performance

Note that as of I2P release 0.8.1, a 1.6 or higher compatible SDK is required to compile I2P. 1.5 or higher compatible JRE is still required to run I2P.

Pack200 note: you can get a free version of pack200.jar from the Apache Harmony package; if you install the Harmony SDK on Ubuntu, the file will be at /usr/lib/harmony-5.0/jdk/jre/lib/boot/pack200.jar; copy it to your JRE's library directory. Sadly, however, we use Sun's java.util.jar.Pack200, and the class in Harmony is org.apache.harmony.pack200.*, so this won't work.