Das vor einigen Tagen veröffentliche JRuby 1.2.0 bringt eine vollständigere Ruby 1.9 Kompatibilität, diversen Bugfixes und Performance-Verbesserungen.
Leider ist das Portfile von macports.org noch nicht aktualisiert worden – um trotzdem schon die Version auf einem Mac zu installieren kann man wie folgt vorgehen:
Aktualisierungspatch aus dem Ticketsystem der MacPorts laden und anwenden
$ cd /tmp
$ wget http://trac.macports.org/raw-attachment/ticket/18901/jruby.diff
$ cd $(port dir jruby)/
$ sudo patch -p0 < /tmp/jruby.diff
Password: ************
patching file Portfile
Zur Überprüfung ob das patchen funktioniert hat:
$ grep "^version" Portfile
version 1.2.0
Die Änderung am Portfile ist jedoch nur temporär, das heisst man sollte also unmittelbar danach auch JRuby installieren: Die manuelle Änderung wird beim nächsten "port sync" ansonsten wieder überschrieben werden.
Ist das Portfile angepasst kann man mit der Installation beginnen:
$ sudo port install jruby
---> Fetching jruby
---> Attempting to fetch jruby-src-1.2.0.tar.gz from http://dist.codehaus.org/jruby/1.2.0/
---> Verifying checksum(s) for jruby
---> Extracting jruby
---> Configuring jruby
---> Building jruby with target jar
---> Staging jruby into destroot
---> Installing jruby 1.2.0_0
---> Activating jruby 1.2.0_0
Falls bereits eine Version installiert ist gibt man stattdessen folgendes ein:
$ sudo port upgrade jruby
... wer nicht unbedingt sofort die neueste Version benötigt wird sicher auch ohne den Patch in einigen Tagen auf Version 1.2.0 upgraden können.
Nutzer anderer Betriebssysteme können JRuby natürlich wie gewohnt von http://dist.codehaus.org/jruby/ herunterladen.


25. März 2009 um 09:16
Hallo Moriz,
ich wusste gar nicht, dass man macports dafür nehmen sollte.
Bisher habe ich es immer runtergeladen, in ein Verzeichnis kopiert, ein GEM_PATH definiert und einen Softlink auf /usr/local/lib/jruby definiert. Dann JRUBY_HOME exportiert und in das bin-Verzeichnis in den Pfad eingebunden.
Das ist wesentlich flexibler und nicht mit Wartezeiten verbunden.
Falls Bedarf besteht, würde ich das mal aufschreiben.
Viele Grüße
Michael Johann
25. März 2009 um 14:38
@Michael
Über Macports sparst Du dir alle von dir genannten manuellen Schritte. Zudem hast Du ein Abhängigkeitsmanagement und allerlei Vorteile die man ansonsten nicht hat (Up-/Downgrades, inoffiziellen Support durch das MacPorts Team von Apple etc.).
Bei steigender Popularität von JRuby wird sicher auch die Geschwindigkeit zunehmen, in der passende Portfiles und Pakete für andere Verwaltungssysteme (DPKG, RPM) angeboten werden ohne dass man sein System “verhunzen” oder manuell eingreifen muss.