[image of the evil water droplet] (jpeg 3k)

GNU Classpath


The primary target for GNU Classpath was originally Japhar . Japhar-0.07 works out-of-the-box with GNU Classpath-0.00. Current Japhar versions do not work with current versions of GNU Classpath.

In the meantime, many other JVM have choosen GNU Classpath as their library implementation:

AegisVM The Aegis VM Project is an on-going effort to develop a lightweight, secure virtual machine for executing Java bytecode. The Aegis VM will eventually feature a modular bytecode verification architecture that allows user-defined static verification procedures to be integrated into the VM's dynamic linking process through pluggable verification modules.
GCJ Although GNU Classpath cannot be directly compiled for use with GCJ at this time, a lot of work has been done to merge GCJ class library code and GNU Classpath class library code. This has resulted in a better version of each. The current merge status between the two projects is located here .
IKVM.NET A JVM for the .NET platform. Runs on top of Mono .
JAmiga A JRE implementation for the Amiga Platform.
JamVM JamVM is a Java Virtual Machine which conforms to the JVM specification version 2 (blue book). In comparison to most other VM's (free and commercial) it is extremely small, with a stripped executable on PowerPC of only ~100K, and Intel 80K. However, unlike other small VMs (e.g. KVM) it is designed to support the full specification, and includes support for object finalisation, the Java Native Interface (JNI) and the Reflection API.
Jaos The Jaos VM is a JVM using GNU Classpath implemented on top of the Aos/Bluebottle kernel. This kernel offers many useful features like garbage collected memory management, dynamic module loading, and object-oriented model. This makes the implementation of a JVM particularly attractive and simple.
JC JC is a Java virtual machine implementation that converts class files into C source files using the Soot Java bytecode analysis framework, compiles them with GCC, and loads them using a built-in ELF object file loader.
Jikes RVM Jikes RVM uses GNU Classpath for all of its libraries. Instructions for using Classpath are provided in the Jikes RVM user's guide as of the Jikes RVM release 2.2.1 (4/7/03). Nightly regression tests are run against the latest Classpath release and the Classpath CVS head. The results are posted on the jikesrvm-regression mailing list, which is archived and available on the Jikes RVM home page.
JNode JNode is a Java New Operating System Design Effort. The goal is to get an simple to use and install Java operating system for personal use. Any java application should run on it, fast & secure!
Jupiter This VM also uses a modified version of the GNU Classpath libraries.
Kaffe Kaffe OpenVM is a complete virtual machine, library framework and tools for programming in the java language. It has its own implementation of part of the core libraries, but uses large parts of the GNU Classpath framework.
Kissme This VM is almost always guaranteed to work with GNU Classpath CVS source code.
ORP Information about ORP can also be found at http://orp.sourceforge.net/ . ORP 1.10 does not work with current GNU Classpath libraries. Information is available in the mailing list archives.
SableVM SableVM is a robust, extremely portable, efficient, and specifications-compliant Java Virtual Machine that aims to be easy to maintain and to extend. It features a state-of-the-art, efficient interpreter engine. Its source code is very accessible and easy to understand, and has many robustness features that have been the object of careful design.
CACAO CACAO is a research Java Virtual Machine developed at the Vienna University of Technology. It has a compile-only approach, which means there is no interpreter at all but a JIT compiler ported to different architectures, like Alpha, i386, MIPS, PowerPC, and x86_64. The main aim of CACAO is to keep the JIT compilation time as small as possible while producing quite fast code.

Other projects using GNU classpath

Flex Compiler FLEX is a compiler infrastructure written in Java for Java. Applications include a program analysis and transformation framework for distributed and embedded systems. Native backends exist for the StrongARM and MIPS processors; it can also generate portable C code that can run on any platform with gcc.

Many research projects have choosen GNU Classpath as their implementation of choice for the Java Libraries, mostly because it is free software, which means the freedom to use, analyze, and change the code for one's purposes.

The following research projects are using GNU Classpath:
Intel's ORP ORP (Open Runtime Platform) is an open source research infrastructure project that provides these features thus enabling the rapid evolution of systems research of dynamic compilation and memory management.

[ Publications ]

IBM's Jikes RVM Jikes RVM (the Jikes Research Virtual Machine) provides the research community with a flexible open testbed to prototype virtual machine technologies and experiment with a large variety of design alternatives. The virtual machine infrastructure in the Jikes RVM release was independently developed as part of the Jalapeņo research project at the IBM T.J. Watson Research Center.

[ Publications ]

SableVM SableVM SableVM is a highly portable and efficient Java virtual machine, using state-of-the-art interpratation techniques. Its goals are to be reasonably small, fast, and compliant with the various specifications (JVM specification, JNI, invocation interface, etc.).

The initial development of SableVM was done as part of the Ph.D. research project of Etienne Gagnon . Continuing development of SableVM project involves the Sable Research Group (McGill University and Universite du Quebec a Montreal), and other generous Free software contributors .

[ SableVM Documents ]
[ Sable Publications (Papers) ]

Jaos Jaos (Java on Active Object System) is a Java Virtual Machine for the Bluebottle System and a case study in interoperability between the Oberon and Java Languages.

Jaos was developed as part of Patrik Reali's Ph.D research project at the Programming Languages and Run-Time Systems Research Group at ETH Zurich .

[ Publications ]

Return to GNU's home page.

Please send FSF & GNU inquiries & questions to gnu@gnu.org. There are also other ways to contact the FSF.

Please send comments on these web pages to webmasters@www.gnu.org, send other questions to gnu@gnu.org.

Copyright © 1999-2006 Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA

Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.

Updated: $Date: 2009/07/30 22:51:18 $ $Author: gnu_andrew $