JRubyを入れてみた
最近、Rubyかわいいよと言いているのですが、もともとはJavaをやっているのでJavaとRubyで書けるJRubyを入れてみたよ。
これから少し遊んでみる。
JRubyって?
JavaVM上でRubyのプログラムを動作させるものということでいいのかな?
Java→Ruby
Ruby→Java
といった呼び出しが出来る。
JavaのAPIが使える。
いろいろ調べていたら、JRubyコンパイラが初回読み出し時にコンパイルを試して、コンパイル出来なかったらJRubyインタプリタ上で実行して、成功したらバイトコードを生成してJavaVM上で実行する。JRubyインタプリタもJavaVM上で動作している。
ということらしい。
JITのようです。
プリコンパイルオプションも完備しているようです。
なんか、面白そう。
インストール
- 以下のサイトからダウンロードして解凍
http://dist.codehaus.org/jruby/
今回は、Ver.1.0.3を使いました。
1.1.3だと、なぜかクラスがロードされないという事態になり、1.0.3にしたら素直に動きました・・・。
なんでだ?
- 好きなところに移動
今回はc:\jruby-1.0.3に置きました。
- PATH関係の設定
環境変数に以下を追加と作成
JRUBY_HOME C:\jruby-1.0.3
PATH %JRUBY_HOME%\bin;%JAVA_HOME%bin
JAVA_HOME jdkのパス
後は、コマンドプロンプトで
という感じで出力されればおk
さっそくやってみよう
JRubyにはjirbというirbと同じようなものが付いているので、これでやってみます。
入力したものだけ。
require 'java' import 'java.lang.System' System.out.println("Hello, World")
なんとこれで、Hello, Worldが出力されますね。
先ほどの内容を、hoge.rbに保存して
jruby hoge.rb
とすることでも実行可能です。
jruby -C hoge.rb
でプリコンパイルが出来るようです。
まとめ
かなり面白い!
なぜか、jrubycが付いていなかった(別に落とす必要あるのかな?classファイル作りたかったんだけど)
もっといじってみよう。
swingだって動く。
docsフォルダをあさってみよう。