Skip to content


Subversion checkout URL

You can clone with
Download ZIP
JRuby, an implementation of Ruby on the JVM
Ruby Java C Yacc XSLT Shell
Failed to load latest commit information.
.mvn updated polyglot-maven-ruby and regenerated pom.xml
antlib Merge branch 'jruby-1_7'
bench Add contended case.
bin [Truffle] Fixed path to jruby bin in jruby+truffle.
core PushBindingInstr -> PushMethodBindingInstr
install Nuke defunct macos installer.
ivy Bump for next dev version
lib [Truffle] j+tr: support for passing any extra ruby options
maven adjust it *uri:classloader://* asserts (failing since b4a29df)
rakelib Make sure windows files generate signatures as part of post_process_a…
samples Revert "Remove FFI"
spec [Truffle] Time: track when zone should return nil and implement dst?
test This test has been moved to RubySpec.
tool [Truffle] build/rebuild --no-tests to skip slow TCK tests
truffle [Truffle] set @path in LoadError defined in rbx code
.gitattributes *.bash files are text files
.gitignore Use racc gem instead of our own copy in stdlib.
.travis.yml [travis-ci] revert jdk 9 testing from 2fa04aa
BSDL Clean up license information a bit for #3198. [build] added a link to wiki to some build info [skip ci] Add code of conduct
COPYING Mention Truffle in COPYING.
LEGAL Adding back LEGAL (for Ola)
LICENSE.RUBY Clean up license information a bit for #3198. Use SVG badges to please the eyes 👀
Rakefile Better pattern to filter out org.jruby sources from Rake output.
VERSION Update for next dev cycle
appveyor.yml Initial work on setting up AppVeyor. Update version numbers to match MRI 2.2.2.
findbugs.xml Ignore intentional String equality checking in RubyModule in FindBugs.
lifecycle-mapping-metadata.xml * Updated config for Eclipse IDE
mvnw adds maven-wrapper
mvnw.bat adds maven-wrapper
pom.rb Merge branch 'jruby-1_7'
pom.xml Merge branch 'jruby-1_7'

JRuby - an implementation of the Ruby language on the JVM

Master: Build Status 1.7 branch: Build Status


JRuby is an implementation of the Ruby language using the JVM.

It aims to be a complete, correct and fast implementation of Ruby, at the same time as providing powerful new features such as concurrency without a global-interpreter-lock, true parallelism, and tight integration to the Java language to allow you to uses Java classes in your Ruby program and to allow JRuby to be embedded into a Java application.

You can use JRuby simply as a faster version of Ruby, you can use it to run Ruby on the JVM and access powerful JVM libraries such as highly tuned concurrency primitives, you can use it to embed Ruby as a scripting language in your Java program, or many other possibilites.

We're a welcoming community - you can talk to us on #jruby on Freenode. There are core team members in the EU and US time zones.

Visit the JRuby website and the JRuby wiki for more information.

Getting JRuby

To run JRuby you will need a JRE (the JVM runtime environment) version 7 or higher.

Your operating system may provide a JRE and JRuby in a package manager, but you may find that this version is very old.

An alternative is to use one of the Ruby version managers.

For rbenv you will need the ruby-build plugin. You may find that your system package manager can provide these. Then you can run:

$ rbenv install jruby-

For rvm you can simply do:

$ rvm install jruby

You can also download packages from the JRuby website that you can unpack and run in place.

Building JRuby from source

See BUILDING for information about prerequisites, how to compile JRuby from source and how to test it.


Stefan Matthias Aust, Anders Bengtsson, Geert Bevin, Ola Bini, Piergiuliano Bossi, Johannes Brodwall, Rocky Burt, Paul Butcher, Benoit Cerrina, Wyss Clemens, David Corbin, Benoit Daloze, Thomas E Enebo, Robert Feldt, Chad Fowler, Russ Freeman, Joey Gibson, Kiel Hodges, Xandy Johnson, Kelvin Liu, Kevin Menard, Alan Moore, Akinori Musha, Charles Nutter, Takashi Okamoto, Jan Arne Petersen, Tobias Reif, David Saff, Subramanya Sastry, Chris Seaton, Nick Sieger, Ed Sinjiashvili, Vladimir Sizikov, Daiki Ueno, Matthias Veit, Jason Voegele, Sergey Yevtushenko, Robert Yokota, and many gracious contributors from the community.

JRuby uses code generously shared by the creator of the Ruby language, Yukihiro Matsumoto

Project Contact: Thomas E Enebo


JRuby is licensed to you under three licenses - the EPL 1.0, GPL 2 and LGPL 2.1. Some components have other licenses and copyright. See the COPYING file for more specifics.

Something went wrong with that request. Please try again.