Archive for the ‘JRuby’ Category
JRuby on Google App Engine
I’ve been reading up on running JRuby on GAE (Google App Engine) for Java. Here are some helpful resources for future reference and for others seeking information about this exciting mix.
- appengine-jruby – This project aims to make using JRuby as easy as any of the native App Engine languages.
- JRuby on Rails on Google App Engine – blog post by Ola Bini (a JRuby contributor). “…the steps you need to take to get a JRuby on Rails application working on GAE/J, and also what kind of characteristics you should expect from your application.”
- JRuby and Ioke on Google App Engine for Java – Google I/O 2009 session video presented by Ola Bini. Not a lot of information on Rails but still has some useful and interesting info.
- ActiveSupport-JCache – a jRuby gem that lets you use Rails.cache in a jRuby on Rails on Google App Engine application. The library uses the Java Memcache API to store/restore values.
- JRuby – official JRuby site.
- Introducing JRuby-Rack - somewhat dated blog post from Nick Sieger, another JRuby contributor.
- Warbler – is a gem to make a .war file out of a Rails, Merb, or Rack-based application.
- ActionMailer-JavaMail is a jRuby gem that lets you send emails from your jRuby on Rails on Google App Engine application, but also works in standard SMTP and SMTPS scenarios. The greater intent of this gem also includes utilizing JavaMail extensions that don’t have equivalents in Ruby.
- Google Wave Robot Container in Sinatra – “Since I got a Google Wave account at Google IO, I felt like I should try to do something Ruby-ish in it. I got talking to Charles Nutter, and he suggested a Sinatra template for Wave Robots. So here it is.”
- Clone TinyURL with 40 lines of Ruby code on Google AppEngine for Java
- Bumble – A small data wrapper for Google DataStore – intended for use with Google App Engine
JRuby Debugging with IntelliJ IDEA 8
For the last couple of years I’ve dabbled with Ruby and JRuby coming from a Java background. Until recently, the only IDE that has had a decent JRuby debugger was NetBeans. Now, with the release of IDEA 8, debugging JRuby is now available in my favorite IDE.
Here are the steps required to debug your JRuby application with IDEA 8:
- First, I will assume JRuby version 1.1.4 or above since that’s what I happen to be using.
- Download
ruby-debug-base-0.10.2-java.gemfrom RubyForge: Debug Commons to a local directory (/tmp). - From /tmp:
jruby -S gem install ruby-debug-base-0.10.2-java.gem - Leave the /tmp directory and do the following:
jruby -S gem install --ignore-dependencies -v 0.10.2 ruby-debug
jruby -S gem install --ignore-dependencies ruby-debug-ide # needed only for IDEs - Now you can debug your JRuby standalone or JRuby on Rails app
A close up of the debugger:

Oracle Mix: First Public JRuby on Rails is Launched
Oracle Mix is a joint effort between the folks at Thoughtworks and Oracle to provide a community for Oracle clients to exchange ideas and network with each other and Oracle.
JRuby 1.1 Beta Faster than MRI
Exciting news for those of you that are following the break-neck pace of JRuby. Thomas Enebo has announced that the JRuby 1.1 beta (released this past weekend) is faster than the original implementation.
Today, Charles Nutter also announced that JRuby is currently faster than Ruby in 14 out of 18 benchmarks and gives specific reasons for the 4 tests that still lag behind.
What does all of this mean? Well, combined with the ever growing Ruby and JRuby community and the increasing performance of JRuby, expect to see an explosion of JRuby implementations including in the enterprise. Since JRuby is now the fastest implementation of Ruby on Rails you can expect to see tons of Java developers as well as Ruby enthusiasts to start giving JRuby more than just a once over.
JetBrains Announces JRuby Support for Ruby Plugin
Oleg Shpynov, the lead for the IntelliJ IDEA Ruby plugin, announced JRuby support will be available as part of a public beta version due out in early September.
New Features will include:
- Scope based autocompletion and resolving
- Rename for local variables and fields
- Javadoc like help for ruby classes, modules, methods, etc
- JRuby run configurations support, that allows you to run scripts
using JRuby interpreter.
