| Name |
Status |
Java versions (from … last known) |
Short description |
Platforms supported |
Garbage Collection (GC) |
Execution Mode |
JIT Compilers |
TCK / License Status |
| Active / Maintained |
ParparVM (Codename One) |
Active |
8 … 8 |
Translates Java bytecode to C code; used by Codename One. |
iOS, Android, Desktop targets, UWP / native app targets via native toolchain. |
Boehm GC (conservative), Simple Mark & Sweep available. |
AOT (Transpilation) |
C Transpiler |
No TCK. (Project sources / Codename One). |
| Substrate (used by GraalVM JDK) |
Active |
1.8.0_212 … 25 |
Polyglot VM based on HotSpot/OpenJDK; native-image & multi-language Truffle support. |
Linux (x86_64, aarch64), macOS, Windows. |
G1, Serial, Epsilon (HotSpot GCs). |
Mixed / AOT |
C1/C2 JIT, Graal JIT (Native Image) |
TCK/certification varies by distributor. |
| HotSpot |
Active |
1 … 25 |
The widely used OpenJDK VM implementation (Oracle / OpenJDK HotSpot). |
Cross-platform: Windows, Linux, macOS; primary ISAs: x86-64 and AArch64. |
Serial, Parallel, G1, Epsilon (E), Shenandoah, GenZGC, GenShen more... |
Mixed (Interp + JIT) |
C1/C2 Compilers (Graal optional) |
Yes (Reference VM in OpenJDK). |
| OpenJ9 |
Active |
8 … 25 [1] |
IBM J9-based open-source VM (Eclipse OpenJ9). Optimized for cloud/memory. |
Linux (x86_64, ppc64le, s390x, aarch64), Windows, AIX. |
Gencon / Generational Concurrent (default), Balanced, Metronome, OptThruput. |
Mixed (Interp + JIT + AOT) |
OpenJ9 JIT (Optimizing Compiler) |
Source-open; binary TCK depends on distributor (e.g., IBM Semeru). |
| IKVM |
Active (Community forks) |
1.4 … 8 |
Java on .NET / Mono; bytecode-to-.NET and interop. |
Runs on the .NET runtime(s). |
CLR GC (Relies on the underlying .NET GC). |
JIT / AOT |
CLR JIT (Code generation by host runtime) |
No TCK. |
| Jikes RVM |
Active (Research) |
6 … 6 |
Jikes Research VM — meta-circular research VM. |
IA-32 Linux and PowerPC 64 Linux (historically). |
MMTk (Memory Management Toolkit); modular collectors. |
JIT Only |
Baseline, Optimizing Compilers |
No TCK. (EPL). |
| leJOS |
Active (Robotics) |
1.5 … 1.6 |
Robotics firmware / Java environment for Lego Mindstorms RCX/NXT/EV3. |
Runs on LEGO Mindstorms hardware families; embedded firmware. |
Compact GC (Mark and Sweep). |
Interpreter |
N/A |
No TCK. |
| Maxine |
Active (Research) |
7 u6 … 8 u222 [2] |
Meta-circular research VM from Oracle Labs / Univ. of Manchester. |
x86_64 (Linux/macOS), AArch64 (Linux), experimental RISC-V. |
Maxine Heap (Java-written heap & collectors). |
Mixed (Interp + JIT) |
Research JIT Tiers |
No TCK (research project). |
| Inactive / Archived / Maintenance |
| Cacao |
Inactive / Maintenance |
1.5 … 6 |
JIT-based VM; used historically with GNU Classpath/OpenJDK. |
Multi-arch historical ports: Linux, macOS, ARM and x86. |
Boehm GC (typical/historical). |
JIT |
Platform JIT |
No TCK. |
| Apache Harmony |
Inactive (Retired 2011) |
5 … 6 |
Clean-room OpenJDK alternative (DRLVM); discontinued. |
Targeted cross-platform JVM work (Linux, Windows, macOS ports historically). |
Generational GC (Mark-Compact / Copying). |
Mixed (Interp + JIT) |
DRLVM JIT |
No TCK. |
| Kaffe |
Inactive |
1.2 … 1.4 |
Clean-room JVM implementation (historic). |
Portable C-based VM; builds available for many POSIX platforms. |
Conservative / Mark-Sweep (Kaffe GC variants). |
Mixed (Interp/JIT) |
Platform JIT |
No TCK. |
| GNU Compiler for Java (GCJ) |
Inactive |
1.4 … 1.5 |
Ahead-of-time Java compiler in GCC (removed). |
Historically targeted many Unix/CPU combos. |
Boehm GC (historical ports). |
AOT |
GCC Backend (Native Code Generator) |
No TCK. |
| JamVM |
Inactive / Rare updates |
5 … 8 |
Small, embeddable JVM often used with GNU Classpath or OpenJDK. |
Cross-platform (Linux, BSD, macOS). |
Mark and Sweep (compact). |
Interpreter / JIT |
Optional JIT |
No TCK. |
| JOP |
Inactive/Academic |
1.1 … 1.1 |
Hardware JVM for embedded real-time systems. |
Dedicated hardware (JOP processor family / FPGA/ASIC targets). |
Hardware-assisted GC (real-time). |
Hardware (Execution) |
N/A |
No TCK. |
| Juice |
Inactive |
1.1 … 1.1 |
Experimental Java ME JVM (NUXI OS). |
Platform: niche embedded target (NUXI/experimental hardware). |
Unknown. |
Interpreter |
N/A |
No TCK. |
| Jupiter |
Inactive |
1.4 … 1.4 |
Research JVM using Boehm GC and GNU Classpath. |
Historically Linux/x86 ports documented. |
Boehm GC. |
Interpreter |
N/A |
No TCK. |
| Mika VM |
Inactive |
1.3 … 1.4 |
Embedded JVM (successor to Wonka). |
Embedded/IoT targets (platform-specific firmware). |
Compact GC. |
Interpreter |
N/A |
No TCK. |
| NanoVM |
Inactive |
1 … 1 |
Tiny JVM for Atmel AVR (Asuro robot). |
Atmel AVR microcontroller (Asuro) hardware. |
Simple GC. |
Interpreter |
N/A |
No TCK. |
| SableVM |
Inactive |
1.3 … 1.5 |
Research-oriented portable interpreter. |
Cross-platform Unix-like systems and research hosts. |
Copying GC. |
Interpreter |
N/A |
No TCK. |
| Squawk virtual machine |
Inactive |
1.1 … 1.1 |
Sun's small Java ME VM for embedded devices (Sun SPOT). |
Sun SPOT / small embedded device platforms. |
Pausing GC (embedded-friendly). |
Interpreter |
N/A |
No TCK. |
| SuperWaba |
Inactive |
1.2 … 1.2 |
Java-like VM for portable devices; succeeded by TotalCross. |
Embedded/mobile device targets historically. |
Mark-Sweep. |
Interpreter |
N/A |
No TCK. |
| TakaTuka |
Inactive/Archived |
1.1 … 1.1 |
JVM for wireless sensor motes (Tuk compact format). |
Sensor-mote platforms (TinyOS-like / constrained hardware). |
Unknown. |
Interpreter |
N/A |
No TCK. |
| TinyVM |
Inactive |
1 … 1 |
Small RCX replacement firmware VM. |
RCX-like embedded brick hardware targets. |
Compact GC. |
Interpreter |
N/A |
No TCK. |
| VMKit |
Inactive / Archived |
1.4 … 1.5 |
LLVM-based VM substrate (archived). |
Cross-platform via LLVM backends (Linux/x86_64 etc.). |
MMTk. |
JIT |
LLVM Backend |
No TCK. |
| Wonka VM |
Inactive |
1.3 … 1.4 |
Embedded Wonka VM (Acunia). |
Embedded hardware / specialized boards (historic). |
Generational GC. |
Interpreter |
N/A |
No TCK. |
| Java Operating Systems |
| JX |
OS-level (Research) |
N/A |
Java operating system (University of Erlangen). |
OS-level VM (research platforms). |
Precise GC. |
Mixed (AOT/JIT) |
AOT/JIT |
No TCK. |
| JavaOS |
OS-level (Legacy) |
N/A |
Original Java-based OS from Sun Microsystems for network computers (NCs) and embedded devices. |
Dedicated network computers (NCs), embedded systems. |
Classic GC (Mark and Sweep/Compact). |
Mixed (Interpreter/JIT) |
Standard Sun JIT |
No TCK. |