Skip to content

abak/jato

 
 

Repository files navigation

Jato VM

Build Status

Jato is an implementation of the Java virtual machine. It includes a VM and a JIT compiler for the x86 machine architecture and supports the JNI API. Jato uses Boehm GC as its garbage collector and relies on GNU Classpath to provide essential Java APIs.

Features

  • JIT-only execution on x86 architecture
  • Uses GNU Classpath for essential classes
  • Boehm garbage collector
  • Runs on Linux

Installation

Prerequisites

Fedora

$ sudo yum install ecj libffi-devel binutils-devel glib2-devel bison llvm-devel llvm-static

Ubuntu

$ sudo apt-get install ecj libffi-dev binutils-dev libiberty-dev libglib2.0-dev bison llvm-dev

Archlinux

$ pacman -S eclipse-ecj classpath libffi

GNU Classpath

GNU Classpath needs to be built and installed from sources.

First install dependencies that are required to build GNU Classpath:

Fedora

$ sudo yum install java-1.7.0-openjdk antlr GConf2-devel gtk2-devel gettext-devel texinfo

Ubuntu

$ sudo apt-get install openjdk-6-jdk antlr libgconf2-dev libgtk2.0-dev ecj fastjar pccts

Then clone the sources from the git repository (the release 0.99 appears to be broken)

git clone git://git.savannah.gnu.org/classpath.git

You can then compile GNU Classpath:

$ ./autogen.sh
$ ./configure --disable-Werror --disable-plugin
$ make

and install it to /usr/local:

$ sudo make install

Build and Install

To compile the VM and run all the tests:

$ make check

All tests should pass.

You can now install Jato with:

$ make install

The command installs an executable jato to $HOME/bin.

Usage

Jato uses the same command line options as java.

To run a class:

$ jato <class name>

To specify classpath, use:

$ jato -cp <jar files or directories> <class name>

You can also execute a Jar file with:

$ jato -jar <jar file>

Jato also supports variety of command line options for debugging and tracing purposes. See the file Documentation/options.txt for details.

License

Copyright © 2005-2013 Pekka Enberg and contributors

Jato is distributed under the 2-clause BSD license.

About

Jato, an open source implementation of the JVM

Resources

License

Unknown, GPL-2.0 licenses found

Licenses found

Unknown
LICENSE
GPL-2.0
COPYING

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 77.0%
  • Objective-C 6.9%
  • Java 6.2%
  • Shell 4.9%
  • C++ 4.0%
  • Assembly 0.6%
  • Other 0.4%