Binary translation for Java


NestedVM provides binary translation for Java Bytecode. This is done by having GCC compile to a MIPS binary which is then translated to a Java class file. Hence any application written in C, C++, Fortran, or any other language supported by GCC can be run in 100% pure Java with no source changes.

NestedVM was created by Brian Alliet and Adam Megacz.

David Crawshaw has also made significant contributions.

NestedVM is Open Source, released under the Apache 2.0 license.


  • 2009-08-09: New snapshot posted

  • 2009-06-07: New snapshot posted, move to git

  • 2009-01-03: New snapshot posted

  • 2007-01-12: Support for fsync()

  • 2006-12-16: Now using GCC 3.3.6 to compile out of the box on Ubuntu 6.10


Note that NestedVM uses GCC 3.3.6, which will not compile under GCC 4.1 or later.

git clone

With a gitweb interface

Or, grab a snapshot here: nestedvm-2009-08-09.tgz



Brian Alliet has some information here

Mailing List and Gmane link