Over a million developers have joined DZone.
Platinum Partner

Heroku Announces JRuby Support, Starting Now

· Cloud Zone

The Cloud Zone is brought to you in partnership with Mendix.  Discover how IT departments looking for ways to keep up with demand for business apps has caused a new breed of developers to surface - the Rapid Application Developer.

This morning, Heroku announced immediate support for JRuby, allowing developers to utilize JVM-based libraries with Ruby syntax. Ruby developers already on Heroku can now use JRuby to run multiple threads of code in one process and take advantage of optimized Java libraries.

Heroku provides the following instructions for those starting from scratch with JRuby:

All you need to do is specify the version of Ruby you want to run, the engine, and the engine version in your Gemfile:

ruby '1.9.3', engine: 'jruby', engine_version: '1.7.1'

You'll need to run bundle install with JRuby locally, then commit the results and push to Heroku:

$ git add .
$ git commit -m "trying JRuby on Heroku"
$ git push heroku master
Counting objects: 692, done.
Delta compression using up to 4 threads. Compressing objects: 100% (662/662), done.
Writing objects: 100% (692/692), 141.01 KiB, done. Total 692 (delta 379), reused 0 (delta 0)
-----> Heroku receiving push
-----> Ruby/Rails app detected
-----> Using Ruby version: ruby-1.9.3-jruby-1.7.1
-----> Installing JVM: openjdk7-latest
-----> Installing dependencies using Bundler version 1.2.1 # ...

Heroku also provides instructions for moving existing rails apps to JRuby.

JRuby support is live now, so you can get git-pushing immediately if you like. And if you do, let us know what you think of the experience.

The Cloud Zone is brought to you in partnership with Mendix. Better understand the aPaaS landscape and how the right platform can accelerate your software delivery cadence and capacity with the Gartner 2015 Magic Quadrant for Enterprise Application Platform as a Service.


{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}