This article provides non-exhaustive lists of
Java SE
Java Platform, Standard Edition (Java SE) is a computing platform for development and deployment of portable code for desktop and server environments. Java SE was formerly known as Java 2 Platform, Standard Edition (J2SE).
The platform uses th ...
Java virtual machine
A Java virtual machine (JVM) is a virtual machine that enables a computer to run Java programs as well as programs written in other languages that are also compiled to Java bytecode. The JVM is detailed by a specification that formally descr ...
s (JVMs). It does not include every
Java ME
Java Platform, Micro Edition or Java ME is a computing platform for development and deployment of porting, portable code for embedded system, embedded and mobile devices (micro-controllers, sensors, gateways, mobile phones, personal digita ...
vendor. Note that
Jakarta EE
Jakarta EE, formerly Java Platform, Enterprise Edition (Java EE) and Java 2 Platform, Enterprise Edition (J2EE), is a set of specifications, extending Java SE with specifications for enterprise features such as distributed computing and web serv ...
runs on the standard Java SE JVM but that some vendors specialize in providing a modified JVM optimized for enterprise applications. Much Java development work takes place on
Windows
Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
,
Solaris
Solaris is the Latin word for sun.
It may refer to:
Arts and entertainment Literature, television and film
* ''Solaris'' (novel), a 1961 science fiction novel by Stanisław Lem
** ''Solaris'' (1968 film), directed by Boris Nirenburg
** ''Sol ...
,
Linux
Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
, and
FreeBSD
FreeBSD is a free-software Unix-like operating system descended from the Berkeley Software Distribution (BSD). The first version was released in 1993 developed from 386BSD, one of the first fully functional and free Unix clones on affordable ...
, primarily with the
Oracle
An oracle is a person or thing considered to provide insight, wise counsel or prophetic predictions, most notably including precognition of the future, inspired by deities. If done through occultic means, it is a form of divination.
Descript ...
JVMs. Note the further complication of different
32-bit
In computer architecture, 32-bit computing refers to computer systems with a processor, memory, and other major system components that operate on data in a maximum of 32- bit units. Compared to smaller bit widths, 32-bit computers can perform la ...
/
64-bit
In computer architecture, 64-bit integers, memory addresses, or other data units are those that are 64 bits wide. Also, 64-bit central processing units (CPU) and arithmetic logic units (ALU) are those that are based on processor registers, a ...
varieties.
The primary Java VM reference implementation is the
OpenJDK
OpenJDK (Open Java Development Kit) is a free and open-source implementation of the Java Platform, Standard Edition (Java SE). It is the result of an effort Sun Microsystems began in 2006, four years before the company was acquired by Oracle Corp ...
HotSpot, produced by
Oracle Corporation
Oracle Corporation is an American Multinational corporation, multinational computer technology company headquartered in Austin, Texas. Co-founded in 1977 in Santa Clara, California, by Larry Ellison, who remains executive chairman, Oracle was ...
and many other big and medium-sized companies (e.g.
IBM
International Business Machines Corporation (using the trademark IBM), nicknamed Big Blue, is an American Multinational corporation, multinational technology company headquartered in Armonk, New York, and present in over 175 countries. It is ...
,
Redhat,
Microsoft
Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
,
Azul,
SAP
Sap is a fluid transported in the xylem cells (vessel elements or tracheids) or phloem sieve tube elements of a plant. These cells transport water and nutrients throughout the plant.
Sap is distinct from latex, resin, or cell sap; it is a s ...
).
Free and open source implementations
Active
*
Codename One
Codename One is an open-source software, open-source cross-platform software, cross-platform framework aiming to provide write once, run anywhere code for various Operating system, mobile and desktop operating systems (like Android (operating sy ...
– uses the open source ParparVM
*
GraalVM – is based on HotSpot/OpenJDK, it has a polyglot feature, to transparently mix and match supported languages.
*
HotSpot – the open-source Java VM implementation by Oracle.
*
IKVM
IKVM (formerly IKVM.NET) is an implementation of Java for Common Language Infrastructure implementations such as Mono and the Microsoft .NET Framework. IKVM is free software, distributed under the zlib permissive free software license.
Work sta ...
– Java for
Mono and the Microsoft .NET Framework. Uses
OpenJDK
OpenJDK (Open Java Development Kit) is a free and open-source implementation of the Java Platform, Standard Edition (Java SE). It is the result of an effort Sun Microsystems began in 2006, four years before the company was acquired by Oracle Corp ...
.
Zlib License
The zlib license is a permissive software license which defines the terms under which the zlib software library can be distributed. It is also used by many other open-source packages. The libpng library uses a similar license, libpng license, s ...
.
*
Jikes RVM
Jikes Research Virtual Machine (Jikes RVM) is a mature virtual machine that runs programs written for the Java platform. Unlike most other Java virtual machines (JVMs), it is written in the programming language Java, in a style of implementation ...
(Jikes Research Virtual Machine) – research project.
PPC and
IA-32
IA-32 (short for "Intel Architecture, 32-bit", commonly called ''i386'') is the 32-bit version of the x86 instruction set architecture, designed by Intel and first implemented in the i386, 80386 microprocessor in 1985. IA-32 is the first incarn ...
. Supports Apache Harmony and GNU Classpath libraries.
Eclipse Public License
The Eclipse Public License (EPL) is a free and open source software license most notably used for the Eclipse IDE and other projects by the Eclipse Foundation. It replaces the Common Public License (CPL) and removes certain terms relating t ...
.
*
leJOS – Robotics suite, a firmware replacement for
Lego Mindstorms
Lego Mindstorms (sometimes stylized as ''LEGO MINDSTORMS'') is a discontinued line of educational kits for building programmable robots based on Lego bricks. It was introduced on 1 September 1998 and discontinued on 31 December 2022.
Mindstor ...
programmable bricks, provides a Java programming environment for the Lego Mindstorms RCX and NXT robots.
*
OpenJ9
Eclipse OpenJ9 (previously known as IBM J9) is a high performance, scalable, Java virtual machine (JVM) implementation that is fully compliant with the Java Virtual Machine Specification.
OpenJ9 can be built from source, or can be used with pre- ...
– open-source from IBM J9, for AIX, Linux (x86, Power, and Z), macOS, Windows, MVS, OS/400, Pocket PC, z/OS.
*
Maxine – meta-circular open source research VM from Oracle Labs and the University of Manchester.
Inactive
*
Apache Harmony
Apache Harmony is a retired open source, free Java implementation, developed by the Apache Software Foundation. It was announced in early May 2005 and on October 25, 2006, the board of directors voted to make Apache Harmony a top-level projec ...
– supports several architectures and systems. Discontinued November 2011.
Apache License
The Apache License is a permissive free software license written by the Apache Software Foundation (ASF). It allows users to use the software for any purpose, to distribute it, to modify it, and to distribute modified versions of the software ...
2.0.
* GCJ the
GCC Java compiler, that compiles either to bytecode or to native machine code. As of GCC 7, gcj and associated libjava runtime library have been removed from GCC.
*
JamVM
JamVM is an open-source Java Virtual Machine (JVM) developed to be extremely small compared with other virtual machines (VMs) while conforming to the Java virtual machine specification version 2 (blue book).
JamVM can be configured to use the GNU ...
– developed to be an extremely small virtual machine. Uses GNU Classpath and
OpenJDK
OpenJDK (Open Java Development Kit) is a free and open-source implementation of the Java Platform, Standard Edition (Java SE). It is the result of an effort Sun Microsystems began in 2006, four years before the company was acquired by Oracle Corp ...
. Supports several architectures. GPL. Last update 2014.
*
JOP – hardware implementation of the JVM. GPL 3.
*
Juice
Juice is a drink made from the extraction or Cold-pressed juice, pressing of the natural liquid contained in fruit and vegetables. It can also refer to liquids that are flavored with concentrate or other biological food sources, such as meat ...
–
JavaME experimental
JVM
A Java virtual machine (JVM) is a virtual machine that enables a computer to run Java programs as well as programs written in other languages that are also compiled to Java bytecode. The JVM is detailed by a specification that formally descri ...
developed to run on the NUXI operating system.
*
Jupiter
Jupiter is the fifth planet from the Sun and the List of Solar System objects by size, largest in the Solar System. It is a gas giant with a Jupiter mass, mass more than 2.5 times that of all the other planets in the Solar System combined a ...
– uses
Boehm garbage collector and GNU Classpath. GPL. Unmaintained.
*
Kaffe
Kaffe is a discontinued " clean room design" (reverse engineering) version of a Java Virtual Machine. It comes with a subset of the Java Platform, Standard Edition (Java SE), Java API, and tools needed to provide a Java runtime environment. Like m ...
– uses GNU Classpath. GPL. 1.1.9 released on February 26, 2008.
*
Mika VM – intended for use in embedded devices. Cross-platform.
BSD-style licence.
*
NanoVM – developed to run on the
Atmel AVR
AVR is a family of microcontrollers developed since 1996 by Atmel, acquired by Microchip Technology in 2016. They are 8-bit RISC single-chip microcontrollers based on a modified Harvard architecture. AVR was one of the first microcontroller ...
ATmega8 used in the Asuro Robot, can be ported to other AVR-based systems.
*
SableVM
SableVM was a clean room implementation of Java bytecode interpreter implementing the Java virtual machine ( VM) specification, second edition. SableVM was designed to be a robust, extremely portable, efficient, and fully specifications-compliant ...
– first free software JVM to support
JVMDI and JDWP. Makes use of GNU Classpath. LGPL. Version 1.13 released on March 30, 2007.
*
Squawk virtual machine
Squawk is a Java micro edition virtual machine for embedded system and small devices. Most virtual machines for the Java platform are written in low level native languages such as C/ C++ and assembler; what makes Squawk different is that Squaw ...
– a
Java ME
Java Platform, Micro Edition or Java ME is a computing platform for development and deployment of porting, portable code for embedded system, embedded and mobile devices (micro-controllers, sensors, gateways, mobile phones, personal digita ...
VM for embedded systems and small devices. Cross-Platform. GPL.
*
SuperWaba – Java-like virtual machine for portable devices. GPL. Discontinued, succeeded by TotalCross.
*
TakaTuka – for
wireless sensor network
Wireless sensor networks (WSNs) refer to networks of spatially dispersed and dedicated sensors that monitor and record the physical conditions of the environment and forward the collected data to a central location. WSNs can measure environmental ...
devices. GPL.
*
TinyVM.
* VMKit of
LLVM
LLVM, also called LLVM Core, is a target-independent optimizer and code generator. It can be used to develop a Compiler#Front end, frontend for any programming language and a Compiler#Back end, backend for any instruction set architecture. LLVM i ...
.
*
Wonka VM – developed to run on Acunia's ARM-based hardware. Some code drawn from GNU Classpath.
BSD-style licence. No longer under active development, superseded by
Mika VM.
Java operating systems
Some JVM's are intended to run without an underlying OS.
*
JX – Java operating system that focuses on a flexible and robust operating system architecture developed as an open source system by the University of Erlangen. GPL. Version 0.1.1 released on October 10, 2007
*
JavaOS
JavaOS is a discontinued operating system based on a Java virtual machine. It was originally developed by Sun Microsystems. Unlike Windows, macOS, Unix, or Unix-like systems which are primarily written in the C or C++ programming languages, Jav ...
– Original project from Sun Microsystems
Proprietary implementations
Active
*
Azul Platform Prime – a fully compliant, high-performance Java virtual machine based on OpenJDK that uses
Azul Systems
Azul Systems, Inc. (also known as Azul) is a company that develops and distributes runtimes ( JDK, JRE, JVM) for executing Java-based applications. The company was founded in March 2002. Azul Systems has headquarters in Sunnyvale, California.
...
's C4 garbage collector and Falcon JIT compiler.
*
JamaicaVM
The JamaicaVM is a virtual machine and build environment for developing and running realtime Java programs. It includes a deterministic garbage collector and implements the RTSJ.Fridtjof Siebert, "Realtime Garbage Collection in the JamaicaVM 3 ...
(aicas) – a hard real-time Java VM for embedded systems.
Inactive
*
Excelsior JET – a licensed Java SE implementation with
AOT compiler for Windows, OS X, and Linux on
Intel x86
x86 (also known as 80x86 or the 8086 family) is a family of complex instruction set computer (CISC) instruction set architectures initially developed by Intel, based on the 8086 microprocessor and its 8-bit-external-bus variant, the 8088. The ...
and Linux on 32-bit
ARM
In human anatomy, the arm refers to the upper limb in common usage, although academically the term specifically means the upper arm between the glenohumeral joint (shoulder joint) and the elbow joint. The distal part of the upper limb between ...
.
*
Jinitiator – developed by Oracle before they purchased Sun. Designed to improve support for
Oracle Forms
Oracle Forms is a software product for creating screens that interact with an Oracle database. It has an IDE that includes an object navigator, property sheet, and code editor that uses PL/SQL. It was originally developed to run server-side i ...
in web sites.
*
JRockit (originally from
Appeal Virtual Machines) – acquired by Oracle for Linux, Windows and Solaris.
*
Mac OS Runtime for Java (MRJ).
*
Microsoft Java Virtual Machine
The Microsoft Java Virtual Machine (MSJVM) is a discontinued proprietary Java virtual machine from Microsoft. It was first made available for Internet Explorer 3 so that users could run Java applets when browsing on the World Wide Web. It was t ...
– discontinued in 2001.
Lesser-known proprietary Java virtual machines
*
Blackdown Java was a licensed port to Linux of the reference SunSoft implementation. It was discontinued in 2007, after
OpenJDK
OpenJDK (Open Java Development Kit) is a free and open-source implementation of the Java Platform, Standard Edition (Java SE). It is the result of an effort Sun Microsystems began in 2006, four years before the company was acquired by Oracle Corp ...
became available.
* Sun CVM – CVM originally standing for "Compact Java Virtual Machine".
*
Gemstone
A gemstone (also called a fine gem, jewel, precious stone, semiprecious stone, or simply gem) is a piece of mineral crystal which, when cut or polished, is used to make jewellery, jewelry or other adornments. Certain Rock (geology), rocks (such ...
– modified for Java EE features (application DBMS).
*
Intent
An intention is a mental state in which a person commits themselves to a course of action. Having the plan to visit the zoo tomorrow is an example of an intention. The action plan is the ''content'' of the intention while the commitment is the '' ...
(Tao Group).
*
PreonVM – a Java VM for embedded systems and small and resource constrained devices.
See also
*
Comparison of Java virtual machines
*
Free Java implementations
Free Java implementations are software projects that implement Oracle's Java technologies and are distributed under free software licences, making them free software. Sun released most of its Java source code as free software in May 2007, so it ...
*
Java processor
*
Dalvik virtual machine
Dalvik is a discontinued process virtual machine (VM) in the Android operating system that executes applications written for Android. (Dalvik bytecode format is still used as a distribution format, but no longer at runtime in newer Android versi ...
References
External links
List of Java virtual machines (JVMs), Java development kits (JDKs), Java runtime environments (JREs)
{{Java Virtual Machine
Java platform software
Java virtual machine
A Java virtual machine (JVM) is a virtual machine that enables a computer to run Java programs as well as programs written in other languages that are also compiled to Java bytecode. The JVM is detailed by a specification that formally descr ...
Java virtual machines