既存の Rails アプリを JRuby で動かす
インストールから順番にやってみる
インストール
JRuby のサイトからダウンロードして適当なパスに展開.
% cd ~/tmp % tar zxvf ~/downloads/jruby-bin-1.3.1.tar.gz % sudo mv jruby-1.3.1 /usr/local/jruby % export PATH=$PATH:/usr/local/jruby/bin % jruby -v jruby 1.3.1 (ruby 1.8.6p287) (2009-06-15 2fd6c3d) (Java HotSpot(TM) 64-Bit Server VM 1.6.0_12) [amd64-java]
Rails のインストール
適宜インストールします.ただし環境変数 GEM_HOME が指定されていたりすると,そこにインストールしようとして Permission error になる可能性あり.なのでそれを JRuby 用に指定し直します.
% GEM_HOME=/usr/local/jruby/lib/ruby/gems/1.8 jruby -S gem install rails --no-ri --no-rdoc JRuby limited openssl loaded. gem install jruby-openssl for full support. http://wiki.jruby.org/wiki/JRuby_Builtin_OpenSSL Successfully installed activesupport-2.3.4 Successfully installed activerecord-2.3.4 Successfully installed rack-1.0.1 Successfully installed actionpack-2.3.4 Successfully installed actionmailer-2.3.4 Successfully installed activeresource-2.3.4 Successfully installed rails-2.3.4
ついでに
% GEM_HOME=/usr/local/jruby/lib/ruby/gems/1.8 jruby -S gem install jruby-openssl --no-ri --no-rdoc JRuby limited openssl loaded. gem install jruby-openssl for full support. http://wiki.jruby.org/wiki/JRuby_Builtin_OpenSSL Successfully installed jruby-openssl-0.5.2 1 gem installed
MySQL アダプタのインストール
gem にある mysql は native extension なので,そのままでは動きません.なので,JDBC 経由で接続するアダプタをインストールします.
% GEM_HOME=/usr/local/jruby/lib/ruby/gems/1.8 jruby -S gem install activerecord-jdbcmysql-adapter --no-ri --no-rdoc Successfully installed activerecord-jdbc-adapter-0.9.2 Successfully installed jdbc-mysql-5.0.4 Successfully installed activerecord-jdbcmysql-adapter-0.9.2 3 gems installed
database.yml の書き換え
さらに database.yml の adapter を書き換えます.
% sed -i 's/mysql/jdbcmysql/g' config/database.yml