Charles Nutter hat den CI-Server für JRuby 1.6.x wieder angeworfen. Damit sind jetzt wieder Snapshot-Builds auf http://ci.jruby.org/snapshots/1.6.x/ verfügbar. Charles fixt für da 1.6.8-Release gerade Bugs und hätte gerne noch Input.
All things JRuby (and Rails). Neuigkeiten aus der JRuby und Rails-Welt. Follow me. https://twitter.com/hermann_kurz
Freitag, 31. August 2012
Donnerstag, 30. August 2012
jcouchbase: couchbase jruby-wrapper als Gem
Jeremy Brenner hat einen JRuby-Wrapper um den couchbase-Java-Client geschrieben und als jcouchbase-Gem auf github veröffentlicht. Couchbase ist eine Erweiterung von CouchDB mit Hochverfügbarkeits-Zugaben (Caching, Clustering, etc).
Mittwoch, 29. August 2012
JRuby-Gem schreiben: Teil 2 von Richard Huang
Richard Huang hat Teil zwei seines Tutorials how to write a jruby gem online gestellt. Schwerpunkt ist diesmal die Erweiterung um Java-Code, um eine bessere Performance zu errreichen. Auch diesmal ist viel Quellcode dabei, von dem man sich einiges abschauen kann.
Dienstag, 28. August 2012
Sehr interessanter Vortrag: JRuby at Square (Payment-Provider)
Xavier Shay hat auf der JRubyConf 2012 einen sehr interessanten Vortrag über JRuby bei Square gehalten. Square ist ein Payment-Provider für kleine Händler, der gerade viel Aufmerksamkeit und Kapital erhält. Jack Dorsey (Twitter) ist CEO von Square.
Xavier Shay beschreibt die Abwägungen und den Entscheidungsprozess der zum Einsatz von JRuby geführt hat. Dabei lag der Schwerpunkt auf Zuverlässigkeit (Payment-Provider!), nicht auf Performance. Im Vortrag kommen auch Probleme zur Sprache, die aufgetreten sind. Das 30-minütige Vortragsvideo kann auf Vimeo angeschaut werden und ist unbedingt sehenswert.
Xavier Shay beschreibt die Abwägungen und den Entscheidungsprozess der zum Einsatz von JRuby geführt hat. Dabei lag der Schwerpunkt auf Zuverlässigkeit (Payment-Provider!), nicht auf Performance. Im Vortrag kommen auch Probleme zur Sprache, die aufgetreten sind. Das 30-minütige Vortragsvideo kann auf Vimeo angeschaut werden und ist unbedingt sehenswert.
Montag, 27. August 2012
Filemaker-Zugriff mit jdbc-helper
jdbc-helper hat nun einen Adapter für Filemaker. Damit kann JRuby per jdbc auf Filemaker-Datenbanken zugreifen.
Sonntag, 26. August 2012
Datenbank für JRuby: H2 oder MySQL?
Gabor Vitez schreibt in seinem Blog, warum er sich für die H2-Datenbank (das ist eine embedded Java-DB) anstatt MySQL für eine Applikation entschieden hat. Dazu gibt es Benchmarks und weitere Argumente. Sehr lesenwswert.
Samstag, 25. August 2012
SafetyPin: Gem zum Zugriff auf JCR
Vielleicht interessant für Ruby-Anwendungen, die ein Java Content Repository (JCR) benutzen sollen: SafetyPin, ein Gem von Jordan Raine zum Zugriff auf JCR. JCR wird in verschiedenen Java-CMS genommen um Content zu speichern. Das Gem ist noch sehr jung, hat die Version 0.0.5 und Dokumentation fehlt auch noch komplett. Es gibt Query-Methoden, die SQL2 (eine JCR-Query-Sprache) verwenden, um JCR-Nodes zu finden.
Freitag, 24. August 2012
Ruboto - JRuby on Android at JRubyConf.eu 2012
Uwe Kubosch hat seine Vortragsfolien Ruboto - JRuby on Android auf speakerdeck online gestellt. Uwe ist ein Ruboto Core Developer. In seinem Vortrag geht es um die Historie von JRuby, das Tooling und einige Codebeispiele.
Donnerstag, 23. August 2012
Neue Version von jruby-memcached fertig
Richard Huang hat das Release 0.5.0 von jruby-memcached zum Download bereitgestellt. Laut Ankündigung sind primär Bugfixes der Grund für das neue Release.
Mittwoch, 22. August 2012
JRuby läuft auf dem Raspberry Pi, jffi-Library wird benötigt
Nachdem mein erster Versuch, JRuby 1.7 unter Java 7 auf dem Raspberry Pi zum Laufen zu bekommen gescheitert ist, hier eine Anleitung, wie das dann doch klappt - es sind allerdings ein paar Hürden zu überwinden..
28 gems installed
Grundlagen:
- Der Raspberry Pi ist ein kleiner Linux-Rechner (256MB RAM, ARM-Prozessor, Ethernet, USB, HD-Video usw), der sehr günstig zu haben ist (etwa 40€). JRuby darauf wäre doch mal nett..
- Für die ARM-Architektur und damit den Raspberry Pi fehlt die jffi-Library (Java Foreign Function Interface), die wird von JRuby benötigt und musste von mir selbst kompiliert werden, da sie architekturspezifisch und momentan noch nicht in der JRuby-Distribution drin ist. Dazu braucht man git und maven und den JDK. Wer das nicht selbst machen will, kann die fertig kompilierte Libary hier runterladen und nach jruby-1.7.0.preview2/lib/native/arm-Linux kopieren.
- Ich verwende Oracle Java, da der Java-Compiler benötigt wird (siehe unten) und OpenJDK wohl etwas langsam ist.
- Oracles Java braucht eine Distribution mit der "armel"-Architektur, da es das Soft Float ABI verwendet. Das schließt die normale Raspbian-Distribution aus, da diese "armhf" (Hardware-Floating-Point) verwendet!
komplette Installation:
- Auf http://www.raspberrypi.org/downloads gibt es ein Debian Wheezy-Image mit "armel"-Architektur, bei mir war das 2012-08-08-wheezy-armel.zip
- Dieses Image entpacken und per "dd" (Linux) oder entsprechendem Windows-Tool auf eine SD-Card bringen (min 2GB)
- Raspberry ans Ethernet klemmen, schauen was er für eine IP-Adresse erhält, per ssh einloggen und konfigurieren (sudo raspi-config, locale und ssh). Neu starten.
- Bei Oracle den SDK runterladen. Das geht über http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1637583.html, dort muß man ein paar Fragen beantworten. Leider geht das nicht vom Raspberry Pi aus, sondern nur über einen richtigen Browser..
- Java-SDK auf den Raspi kopieren, dann auf dem Raspberry Pi einloggen
- Java-SDK als Root installieren und als Standard setzen
- mkdir /opt/javacd /opt/java
tar -zxf /home/pi/jdk-7u6-linux-arm-sfp.tar.gz
update-alternatives --install "/usr/bin/javac" "javac" "/opt/java/jdk1.7.0_06/bin/javac" 1
update-alternatives --install "/usr/bin/java" "java" "/opt/java/jdk1.7.0_06/bin/java" 1 - Wer die jffi-Library nicht selbst kompilieren will, kann sie hier runterladen und nach jruby-1.7.0.preview2/lib/native/arm-Linux kopieren, die Schritte 9-16 entfallen dann.
- git auf dem Raspberry Pi installieren: sudo apt-get install git
- Die folgenden Schritte als User "pi"
- maven auf dem Raspberry Pi installieren. Das habe ich nicht per apt-get gemacht, da dann gleich OpenJDK mit installiert wird, sondern Maven direkt von http://maven.apache.org/download.html geholt, entpackt und den PATH des Users "pi" entsprechend erweitert.
- jffi holen: git clone https://github.com/jnr/jffi
- jffi-Library kompilieren: cd jffi; mvn install
- Als User "pi" das neueste jruby-1.7.2 (momentan http://jruby.org/2012/08/07/jruby-1-7-0-preview2) runterladen und entpacken.
- Kompilierte Library ins richtige JRuby-Verzeichnis kopieren: mv ./jffi/target/jni/arm-Linux jruby-1.7.0.preview2/lib/native/
- Nun noch Pfade und JRUBY_HOME setzen:
export JRUBY_HOME=/home/pi/jruby-1.7.0.preview2
export PATH=$PATH:$JRUBY_HOME/bin - Jetzt kann z.B. Rails (dauert sehr lange) oder Sinatra installiert werden:
jruby -S gem install rails
Fetching: i18n-0.6.0.gem (100%)
.
Fetching: i18n-0.6.0.gem (100%)
.
.
Successfully installed rails-3.2.828 gems installed
Warum das Ganze?
Um zu sehen, was auf der kleinen Kiste geht. Die Performance habe ich mir noch nicht angeschaut, da kommt sicher noch ein Blog-Eintrag.Video: hochverfügbarer Cluster mit TorqueBox
Joe Kutner, (Autor des Buches Deploying with JRuby) zeigt in einem kurzen Video, wie einfach es ist, einen hochverfügbaren Cluster mit Torquebox aufzusetzen. Das wird nur durch Konfiguration erreicht, Codeanpassungen sind nicht nötig.
Dienstag, 21. August 2012
JRuby-Lint checkt Code auf JRuby-Probleme
JRuby-Lint ist ein Tool von Nick Sieger (JRuby-Core-Committer), das Ruby-Code auf potentielle Probleme mit JRuby checkt.
Montag, 20. August 2012
jruby-memcached 0.4.1 erschienen
Aurora Feint Inc hat die Version 0.4.1 des jruby-memcached Gems auf github gestellt. jruby-memcached ist kompatibel zum MRI-memcached-Gem. Laut benchmark ist es das schnellste memcached Gem für JRuby.
Sonntag, 19. August 2012
mehr Vorträge von der JRubyConfEU
Samstag, 18. August 2012
Vorträge auf der JRubyConfEu 2012: Slides und Code
Mehrere Sprecher haben Slides und Code ihrer Vorträge von der JRubyConfEu 2012 online gestellt:
Theo Hultberg (Burt) die Slides seines Vortrags Concurrency and Distributed Systems in JRuby.
Toby Crawley(RedHat) Slides zu Simplify your Infrastructure with TorqueBox, der Code zum Vortrag ist auf github
Mario Camou (abstra.cc) Slides zu Static or dynamic typing: why not both?
Insgesamt jede Menge Information.
Theo Hultberg (Burt) die Slides seines Vortrags Concurrency and Distributed Systems in JRuby.
Toby Crawley(RedHat) Slides zu Simplify your Infrastructure with TorqueBox, der Code zum Vortrag ist auf github
Mario Camou (abstra.cc) Slides zu Static or dynamic typing: why not both?
Insgesamt jede Menge Information.
- Theo Hultberg
- Concurrency and Distributed Systems in JRuby
- Toby Crawley
- Slides: Simplify your Infrastructure with TorqueBox
- Code: Simplifiy your infrastructure with TorqueBox
- Mario Camou
- abstra.cc
- Static or dynamic typing: why not both?
Labels:
big data,
burt,
Concurrency,
dynamic,
jrubyconfeu,
static,
torquebox
Freitag, 17. August 2012
Ruboto: Beispiel-App für Android von Marc Berszick
Wer an einem Beispiel nachvollziehen will, wie man eine Android-App mit Ruboto (JRuby auf Android) baut, kann das auf http://rubysource.com/ruboto-rubys-and-androids-first-born/ nachvollziehen. Marc Berszick zeigt das Schritt für Schritt von der Installation des Android-SDK bis zum Quellcode anhand einer simplifizierten Anwendung.
Donnerstag, 16. August 2012
Versuch: JRuby auf dem Raspberry Pi
Neulich ist mein Raspberry Pi eingetroffen, und ich habe natürlich probiert, dort JRuby zum Laufen zu bekommen. Leider ist mir das nicht gelungen...
Meine Umgebung:
Da ich Hardware-nahe Sachen ausprobieren will, habe ich auf einer 4GB-SD-Karte Adafruits Occidentalis 0.1-Distribution installiert.
Anschließend war ein Kernel-Update fällig (Interrupts!) und zwar mit Chris Boots Raspberry Pi 3.2.23 Kernel. Das geht nur mit Gewalt (--force-architecture), aber der Raspi läuft:
pi@raspberrypi ~ $ uname -a
Linux raspberrypi 3.2.23-rpi1+ #3 Sun Jul 15 16:46:51 BST 2012 armv6l GNU/Linux
Anschließend Java 7 installiert:
java version "1.7.0_03"
Prima bis jetzt, aber dann wird es duster:
at com.kenai.jffi.internal.StubLoader.getStubLibraryStream(StubLoader.java:345)
at com.kenai.jffi.internal.StubLoader.loadFromJar(StubLoader.java:292)
at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:235)
at com.kenai.jffi.internal.StubLoader.<clinit>(StubLoader.java:395)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at com.kenai.jffi.Init.load(Init.java:68)
... 33 more
ArgumentError: cannot import class `org.jruby.RubyProcess' as `RubyProcess'
java_import at file:/home/pi/jruby-1.7.0.preview2/lib/jruby.jar!/jruby/java/core_ext/object.rb:63
map at org/jruby/RubyArray.java:2355
java_import at file:/home/pi/jruby-1.7.0.preview2/lib/jruby.jar!/jruby/java/core_ext/object.rb:22
ProcessManager at file:/home/pi/jruby-1.7.0.preview2/lib/jruby.jar!/jruby/kernel/jruby/process_manager.rb:7
JRuby at file:/home/pi/jruby-1.7.0.preview2/lib/jruby.jar!/jruby/kernel/jruby/process_manager.rb:6
(root) at file:/home/pi/jruby-1.7.0.preview2/lib/jruby.jar!/jruby/kernel/jruby/process_manager.rb:3
load at org/jruby/RubyKernel.java:1050
(root) at file:/home/pi/jruby-1.7.0.preview2/lib/jruby.jar!/jruby/kernel.rb:1
nicht schön.
aber ein Fehler bei der Rails-Installation
pi@raspberrypi ~ $ ./jruby-1.6.7.2/bin/jruby -S gem install rails
ArgumentError: Illformed requirement [">= 0"]
Hier hängt sich der Raspi bei "jruby -version" komplett auf, er ist gar nicht mehr übers Netz erreichbar, im Log sehe ich leider nichts.
Hier meldet sich Java und JRuby korrekt:
pi@raspberrypi ~ $ java -version
java version "1.6.0_24"
OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-2+rpi1)
OpenJDK Zero VM (build 20.0-b12, mixed mode)
pi@raspberrypi ~ $ jruby -v
jruby 1.7.0.preview2 (1.9.3p203) 2012-08-07 4a6bb0a on OpenJDK Zero VM 1.6.0_24-b24 [linux-arm]
aber eine Rails-Installation funktioniert nicht:
pi@raspberrypi ~ $ ./jruby-1.6.7.2/bin/jruby -S gem install rails
ArgumentError: Illformed requirement [">= 0"]
parse at /home/pi/./jruby-1.6.7.2/lib/ruby/site_ruby/1.8/rubygems/requirement.rb:81
initialize at /home/pi/./jruby-1.6.7.2/lib/ruby/site_ruby/1.8/rubygems/requirement.rb:106
map! at org/jruby/RubyArray.java:2371
initialize at /home/pi/./jruby-1.6.7.2/lib/ruby/site_ruby/1.8/rubygems/requirement.rb:106
default at /home/pi/./jruby-1.6.7.2/lib/ruby/site_ruby/1.8/rubygems/requirement.rb:62
Specification at /home/pi/./jruby-1.6.7.2/lib/ruby/site_ruby/1.8/rubygems/specification.rb:83
(root) at /home/pi/./jruby-1.6.7.2/lib/ruby/site_ruby/1.8/rubygems/specification.rb:29
(root) at /home/pi/./jruby-1.6.7.2/lib/ruby/site_ruby/1.8/rubygems/specification.rb:51
require at org/jruby/RubyKernel.java:1033
(root) at /home/pi/./jruby-1.6.7.2/lib/ruby/site_ruby/1.8/rubygems/defaults/jruby.rb:1273
require at org/jruby/RubyKernel.java:1033
(root) at /home/pi/./jruby-1.6.7.2/bin/gem:8
Hat jemand JRuby auf dem Raspberry Pi zum laufen bekommen, bzw eine Idee, was hier schiefläuft?
Meine Umgebung:
Da ich Hardware-nahe Sachen ausprobieren will, habe ich auf einer 4GB-SD-Karte Adafruits Occidentalis 0.1-Distribution installiert.
Anschließend war ein Kernel-Update fällig (Interrupts!) und zwar mit Chris Boots Raspberry Pi 3.2.23 Kernel. Das geht nur mit Gewalt (--force-architecture), aber der Raspi läuft:
pi@raspberrypi ~ $ uname -a
Linux raspberrypi 3.2.23-rpi1+ #3 Sun Jul 15 16:46:51 BST 2012 armv6l GNU/Linux
Anschließend Java 7 installiert:
pi@raspberrypi ~ $ sudo apt-get update
pi@raspberrypi ~ $ sudo apt-get install openjdk-7-jdk
pi@raspberrypi ~ $ java -versionpi@raspberrypi ~ $ sudo apt-get install openjdk-7-jdk
java version "1.7.0_03"
Prima bis jetzt, aber dann wird es duster:
Mit JRuby 1.7preview2
pi@raspberrypi ~ $ ./jruby-1.7.0.preview2/bin/jruby -S gem install rails
java.lang.ExceptionInInitializerError
at com.kenai.jffi.Foreign.getInstance(Foreign.java:95)
java.lang.ExceptionInInitializerError
at com.kenai.jffi.Foreign.getInstance(Foreign.java:95)
.
.
Caused by: java.lang.UnsatisfiedLinkError: could not locate stub library in jar file. Tried [jni/arm-Linux/libjffi-1.2.so, /jni/arm-Linux/libjffi-1.2.so]at com.kenai.jffi.internal.StubLoader.getStubLibraryStream(StubLoader.java:345)
at com.kenai.jffi.internal.StubLoader.loadFromJar(StubLoader.java:292)
at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:235)
at com.kenai.jffi.internal.StubLoader.<clinit>(StubLoader.java:395)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at com.kenai.jffi.Init.load(Init.java:68)
... 33 more
ArgumentError: cannot import class `org.jruby.RubyProcess' as `RubyProcess'
java_import at file:/home/pi/jruby-1.7.0.preview2/lib/jruby.jar!/jruby/java/core_ext/object.rb:63
map at org/jruby/RubyArray.java:2355
java_import at file:/home/pi/jruby-1.7.0.preview2/lib/jruby.jar!/jruby/java/core_ext/object.rb:22
ProcessManager at file:/home/pi/jruby-1.7.0.preview2/lib/jruby.jar!/jruby/kernel/jruby/process_manager.rb:7
JRuby at file:/home/pi/jruby-1.7.0.preview2/lib/jruby.jar!/jruby/kernel/jruby/process_manager.rb:6
(root) at file:/home/pi/jruby-1.7.0.preview2/lib/jruby.jar!/jruby/kernel/jruby/process_manager.rb:3
load at org/jruby/RubyKernel.java:1050
(root) at file:/home/pi/jruby-1.7.0.preview2/lib/jruby.jar!/jruby/kernel.rb:1
nicht schön.
Nächster Versuch Java 7 mit JRuby 1.6.7.2
pi@raspberrypi ~ $ jruby -v
jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Zero VM 1.7.0_03) [linux-arm-java]
jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Zero VM 1.7.0_03) [linux-arm-java]
aber ein Fehler bei der Rails-Installation
pi@raspberrypi ~ $ ./jruby-1.6.7.2/bin/jruby -S gem install rails
ArgumentError: Illformed requirement [">= 0"]
Nächster Versuch: Java 6 mit JRuby 1.7preview2.
Hier hängt sich der Raspi bei "jruby -version" komplett auf, er ist gar nicht mehr übers Netz erreichbar, im Log sehe ich leider nichts.
Nächster Versuch: Java 6 mit JRuby 1.6.7.2
Hier meldet sich Java und JRuby korrekt:
java version "1.6.0_24"
OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-2+rpi1)
OpenJDK Zero VM (build 20.0-b12, mixed mode)
pi@raspberrypi ~ $ jruby -v
jruby 1.7.0.preview2 (1.9.3p203) 2012-08-07 4a6bb0a on OpenJDK Zero VM 1.6.0_24-b24 [linux-arm]
aber eine Rails-Installation funktioniert nicht:
pi@raspberrypi ~ $ ./jruby-1.6.7.2/bin/jruby -S gem install rails
ArgumentError: Illformed requirement [">= 0"]
parse at /home/pi/./jruby-1.6.7.2/lib/ruby/site_ruby/1.8/rubygems/requirement.rb:81
initialize at /home/pi/./jruby-1.6.7.2/lib/ruby/site_ruby/1.8/rubygems/requirement.rb:106
map! at org/jruby/RubyArray.java:2371
initialize at /home/pi/./jruby-1.6.7.2/lib/ruby/site_ruby/1.8/rubygems/requirement.rb:106
default at /home/pi/./jruby-1.6.7.2/lib/ruby/site_ruby/1.8/rubygems/requirement.rb:62
Specification at /home/pi/./jruby-1.6.7.2/lib/ruby/site_ruby/1.8/rubygems/specification.rb:83
(root) at /home/pi/./jruby-1.6.7.2/lib/ruby/site_ruby/1.8/rubygems/specification.rb:29
(root) at /home/pi/./jruby-1.6.7.2/lib/ruby/site_ruby/1.8/rubygems/specification.rb:51
require at org/jruby/RubyKernel.java:1033
(root) at /home/pi/./jruby-1.6.7.2/lib/ruby/site_ruby/1.8/rubygems/defaults/jruby.rb:1273
require at org/jruby/RubyKernel.java:1033
(root) at /home/pi/./jruby-1.6.7.2/bin/gem:8
Hat jemand JRuby auf dem Raspberry Pi zum laufen bekommen, bzw eine Idee, was hier schiefläuft?
Mittwoch, 15. August 2012
JRuby 1.7: Release-Candidate kommt bald
Das JRuby-Team hat angekündigt, daß der erste Release-Candidate für JRuby 1.7 bald kommt. Das endgültige Release ist für September geplant. Bis dahin wird noch Feedback benötigt, was fürs Release noch unbedingt gefixt werden muß.
Dienstag, 14. August 2012
Ruboto 0.8 erschienen (JRuby auf Android)
Ruboto 0.8.0 ist fertig. Wichtigste Änderung ist Support für Android 4.1 api level 16.
Montag, 13. August 2012
Graphische Ausgabe von JRuby-Profilerdaten
Theo Hultberg hat ein Tool namens DotProfilePrinter geschrieben, das den JRuby-Profiler-Output im DOT-Format von GraphViz speichert. Damit hat man übersichtliche Graphen des zeitlichen Verhaltens seines Ruby-Scripts in jierarchischer Darstellung.
Sonntag, 12. August 2012
Deploying with JRuby, Slides nun online
Joe Kutner, Autor des Buches Deploying with JRuby hat nun zusätzlich zu seinem Vortrag von der RubyConf 2012 auch Slides online gestellt.
- Joe Kutner
- Bebgleitblog zum Buch Deploying with JRuby
- Talk Deploying with JRuby (JRubyCong 2012 Talk)
Samstag, 11. August 2012
JRuby-Gems-Mojo: Gems via Maven in Java-Projekten
Mit JRuby-Gems-mojo lassen sich JRuby Gems in Maven-basierten Java-Projekten verwenden. Dadurch kann man Teile des Java-Projekts in JRuby entwickeln und das ganze per Maven bauen.
Freitag, 10. August 2012
Ruboto: neues Release, mehr Entwickler (JRuby auf Android)
Bei Ruboto gibt es Neuigkeiten: demnächst gibt es eine neues Release 0.7.1, der Release-Candidate liegt zum Download bereit. Außerdem sind neue Entwickler zum Projekt gestossen, so daß das Projekt mehr Geschwindigket aufnehmen wird.
Ruboto basiert auf JRuby - man kann damit (J)Ruby-Scripte auf Android-Geräten ausführen, die Zugriff auf das komplette Android-API haben.
Ruboto basiert auf JRuby - man kann damit (J)Ruby-Scripte auf Android-Geräten ausführen, die Zugriff auf das komplette Android-API haben.
Donnerstag, 9. August 2012
jruby-memcached 0.3.0 released
Eine neue Version des JRuby-memcached-Gems ist erschienen. Richard Huang hat das Gem nun komplett nach Java portiert. Die Performance wurde dadurch nochmal gesteigert. Seine Benchmark-Zahlen zeigen sehr gute Zahlen in einem Vergleich mit verschiedenen memcached-Adaptern.
Labels:
benchmark,
JRuby,
memcached,
performance
Mittwoch, 8. August 2012
JRuby 1.7.0.preview2 Released
Wei angekündigt wurde nun die Preview2 des nächsten JRuby-Release (1.7) veröffentlicht. Größte Änderung ist, daß der invokedynamic-Support als Default abgeschaltet ist. Das ist sehr schade, es ist aber Problemen bei Java7 geschuldet. Wenn diese dort gefixt sind, wird das wieder eingeschaltet. Wie üblich wurden jede Menge Fehler gefixt, insbesondere Kompatibilitätspobleme mit Ruby 1.9.
Labels:
1.7.0.preview2,
invokedynamic,
java7,
JRuby
Dienstag, 7. August 2012
Wie man ein JRuby-Gem schreibt..
.. erläutert Richard Huang anhand seine memcached-gems. Vom Directory-Layout bis zu den über maven gemanageten Abhängigkeiten ist alles beschrieben.
Montag, 6. August 2012
Beispiel: Java-Extension für ein JRuby Gem
Im Blog The If Works gibt es Sourcecode für eine JRuby-Extension, die in ein Gem integriert wird. Der Code wird so beschrieben, daß man nach der Lektüre in der Lage sein sollte, selbst eine Extension zu schreiben.
Sonntag, 5. August 2012
Azul macht die Zing JVM etwas zugänglicher für OpenSource-Projekte
Azul Systems hat seine Zing JVM für OpenSource-Entwickler verfügbar gemacht. Diese JVM ist - laut Hersteller - die am besten skalierende JVM. Zielgruppe ist in-memory computing and Big Data analytics, Anwendungen mit niedrigen Antwortzeiten. Zing JVM läuft auf Red Hat Enterprise Linux, SUSE Linux Enterprise Server, CentOS und Ubuntu Linux.
Samstag, 4. August 2012
Last Minute Tickets für JRubyConfEU (und eurucamp)
Für die JRubyConfEU und das eurucamp in bei Berlin (17.-19. August) gibt es noch eine kleine Zahl von Karten. Details hier.
Freitag, 3. August 2012
Foreman und JRuby
Mark beschreibt in seinem Blog, wie er Foreman beigebracht hat, mit JRuby umzugehen. Mit Foreman kann man mehrere Prozesse gleichzeitig mit einem Kommandozeilenaufruf starten und den Output aller Skripte komfortabel beobachten - normalerweise unterstützt es jedoch nur MRI Ruby.
Donnerstag, 2. August 2012
Bei Mountain-Lion IP-Problemen: export JAVA_OPTS="-Djava.net.preferIPv4Stack=true"
Bei neueren Java-Versionen (z.B. nach einem Upgrade auf Mountain Lion) will Java (und damit JRuby) mit IPv6 ins Netz, das klappt meistens nicht.
export JAVA_OPTS="-Djava.net.preferIPv4Stack=true"
oder
jruby -J-Djava.net.preferIPv4Stack=true your_code.rb
meint
Mittwoch, 1. August 2012
developerworks: Manage Ruby and gems with RVM
Auf IBMs developerworks gibt es einen Einführungstext zu RVM. Mit RVM kann man verschiedene Ruby-Versionen auf einem Rechner verwalten, so daß mehrere Projekte mit unterschiedlichen Rubies, GEM und Umgebungen laufen können. Ein Muß für jeden Entwickler. RVM kennt natürlich auch die neueste JRuby-Version.
Abonnieren
Posts (Atom)