2010年2月24日水曜日

JRubyとRails 3を仲良くさせる方法

原文 ニック=シーガー

概要



jruby -S rails newapp -m http://jruby.org/rails3.rb



Rails 3のアプリを生成する際にはJRuby専用のテンプレート(-m http://jruby.org/rails3.rb)を使用して下さい。





詳細



rubygemsのバグの為、bundlerはバージョン0.9よりも古い物全てをアンインストールする必要があります。


$ jruby -S gem install rails --pre --no-rdoc --no-ri
Successfully installed i18n-0.3.3
Successfully installed tzinfo-0.3.16
Successfully installed builder-2.1.2
Successfully installed memcache-client-1.7.8
Successfully installed activesupport-3.0.0.beta
Successfully installed activemodel-3.0.0.beta
Successfully installed rack-1.1.0
Successfully installed rack-test-0.5.3
Successfully installed rack-mount-0.4.7
Successfully installed abstract-1.0.0
Successfully installed erubis-2.6.5
Successfully installed actionpack-3.0.0.beta
Successfully installed arel-0.2.1
Successfully installed activerecord-3.0.0.beta
Successfully installed activeresource-3.0.0.beta
Successfully installed mime-types-1.16
Successfully installed mail-2.1.3
Successfully installed text-hyphen-1.0.0
Successfully installed text-format-1.0.0
Successfully installed actionmailer-3.0.0.beta
Successfully installed thor-0.13.3
Successfully installed railties-3.0.0.beta
Successfully installed bundler-0.9.7
Successfully installed rails-3.0.0.beta
24 gems installed


続けて



$ jruby -S gem install activerecord-jdbcsqlite3-adapter --no-rdoc --no-ri
Successfully installed activerecord-jdbc-adapter-0.9.3-java
Successfully installed jdbc-sqlite3-3.6.3.054
Successfully installed activerecord-jdbcsqlite3-adapter-0.9.3-java
3 gems installed


最後に



$ jruby -S rails newapp -m http://jruby.org/rails3.rb
create
...(app creation)...
apply http://jruby.org/rails3.rb
apply http://jruby.org/templates/default.rb
gsub Gemfile
run jruby script/rails generate jdbc from "."
...(warnings omitted)...
exist
create config/initializers/jdbc.rb
create lib/tasks/jdbc.rake
$ cd newapp
$ jruby script/rails server
...(warnings omitted)...
=> Booting WEBrick
=> Rails 3.0.0.beta application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2010-02-23 19:44:26] INFO WEBrick 1.3.1
[2010-02-23 19:44:26] INFO ruby 1.8.7 (2010-02-23) [java]
[2010-02-23 19:44:26] INFO WEBrick::HTTPServer#start: pid=16449 port=3000



rails-welcome



おさらい



最善の結果の為、RubyGems 1.3.6を搭載しているJRuby 1.5.0devのスナップショットを使用して下さい。JRuby 1.5ももう少しでリリースされます。加えて最新のactiverecord-jdbc-adapter 0.9.3がRails 3との互換性の為には必要です。



JRubyでのRailsの使用感はどんどん良くなって行きます。


2 件のコメント:

  1. 「JRubyのスナップショット」とリンクされると「その、RubyGems 1.3.6を搭載しているやつって、どれ?」と思いそう。「JRuby 1.5のスナップショット」とか?

    返信削除
  2. NaHiさん。確かに解り辛いですね。1.5.0devを足しておきました。

    Windowsをお使いの方は*.zipをダウンロードして下さい。その他のUNIXっぽい環境をお使いの方は*.tar.gzでもOKです。

    返信削除