JRuby 1.0 への Rails インストール手順

JRubyRails をインストールして実行させる方法は、docs/README.rails ファイルに記載されている。

手順は以下の通り。

  1. rails インストール
  2. ActiveRecord-JDBC インストール
  3. rails アプリケーションを作成
  4. JDBC 利用の設定

rails のインストール

JRuby 1.0 には予め RubyGems が含まれているため、JRuby の bin ディレクトリにパスが通っている状態で、gem を実行して Ruby on Rails をインストールする。

>gem install --no-rdoc --no-ri -y rails

(注)--no-rdoc、--no-ri の指定は時間短縮のため、付けなくてもインストールは動作するが、ActionPack の ri と rdoc の実行時に ArrayIndexOutOfBoundsException が発生した

ActiveRecord-JDBC インストール

>gem install --no-rdoc --no-ri ActiveRecord-JDBC

rails アプリケーションを作成

任意のフォルダで JRuby の bin ディレクトリにインストールされた rails スクリプトを実行して rails アプリケーションを作成する

>jruby %JRUBY_HOME%/bin/rails my_app

Windows で使うには、以下のような内容のバッチファイル rails.bat ファイルを bin ディレクトリに作成しておけばよい(rake も同様)

rails.bat ファイルの例
jruby %JRUBY_HOME%\bin\rails %*

JDBC利用の設定

アプリケーションの config/environment.rb ファイルの Rails::Initializer.run do |config| の下に処理を記述して、JRuby の場合に ActiveRecord-JDBC を使用するように設定する。

config/environment.rb ファイルの編集例
Rails::Initializer.run do |config|
    #処理の追加
    if RUBY_PLATFORM =~ /java/
        require 'rubygems'
        RAILS_CONNECTION_ADAPTERS = %w(jdbc)
    end
    ・・・
end

config/database.yml に JDBC ドライバーを使用する設定を施し、クラスパスに JDBC ドライバーを設定しておく。

config/database.yml ファイルの編集例
development:
  adapter: jdbc
  driver: org.apache.derby.jdbc.EmbeddedDriver
  url: jdbc:derby:db/test1;create=true

動作確認

生成した rails アプリケーションのフォルダに移動して以下のコマンドでアプリケーションを実行し、http://localhost:3000/ にアクセスして動作を確認する。

>jruby script/server