工学社刊/清水美樹著「はじめてのJRuby on Rails」( ISBN978-4-7775-1713-8)の関連トピックです。
「はじめてのJRuby on Rails」サポートページの目次へ
このサイトの目次へ
本書のバージョンを再現する
Ruby on Railsは、たくさんのRubyモジュールから成っているので、各モジュールのどれかひとつがバージョンアップしても全体がうまく動かなくなることがあります。
JRuby on Railsも同じです。
最近の環境をそのまま適用すると、動かないようです。一番の問題は、Rubyが1.8から1.9にバージョンアップしてから、1.9にしか対応しないモジュールが増えてきたことです。
そこで、いろいろなモジュールを本書で行ったものに揃えて、実行する方法を解説します。
心得ておきたいこと
最新のRubyは入れないのが安全
JRuby on Railsのほかに、バージョン1.9以上のRubyをインストールしてある場合、そのRubyが勝手に呼ばれないようにしなければなりません。
命令を常に「jruby -S」で始めればいいのですが、念のため別途インストールしてあるRubyは使わなければアンインストールし、使っている場合は一時的にフォルダ名を変えるなどして、封印しておいたほうがいいと思います。
失敗した場合はJRubyごと除去
この文書を読んでいる方の中には、すでに新しい環境でJRuby on Railsの導入を試みてエラーに見舞われたという方もいるかと思います。その場合は、すでにいろいろな新しいモジュールがJRubyの中に入ってしまっているかも知れません。基本的に新しい環境を古い環境で上書きすると不安定になりますから、JRubyをアンインストールするかフォルダ名を変えるなどして、無効にしてください。
本書第5章までの操作
SQLite3は最新でも大丈夫
SQLiteには、古いバージョンの「バイナリ(すぐ使えるようにコンパイルしたもの)」は置いていないようです。しかし、これは最近のバージョンでも問題はありません。
JRuby1.6.7.2をインストールする
本書で使用したJRuby 1.6.7.2は、Rubyのダウンロードサイトから入手できます。
Ruby on Rails 3.2.7をダウンロードする
gemコマンドで、実行例1のように、バージョンを「3.2.7」に指定してインストールします。
実行例1 Ruby on Railsのバージョンを指定してインストール
jruby -S gem install rails -v 3.2.7
データベースドライバ(SQLite3)
実行例2のように、バージョンを指定してインストールします。
実行例2 SQLite3のドライバモジュール
jruby -S gem install jdbc-sqlite3 -v 3.7.2
jruby -S gem install activerecord-jdbcsqlite3-adapter -v 1.2.2
このとき、「activerecord-jdbcsqlite3-adaper」とともにインストールされる「activerecord-jdbc-adapter」のバージョンは1.2.9で、本書のモジュールよりちょっと新しいですが、大丈夫です。
jruby-opensslだけは最新を
これだけは、最新版でないと逆にRuby on Railsが動きません。バージョン指定なしで、最新のものをインストールしてください。
セキュリティ警告は出るが実践はできる
以上のインストールにより、本章の第5章までを実践できます。
ただし、たびたび以下のような「Rack」関係の警告メッセージが大量に吐かれます。たとえば、「generate」コマンドでスクリプトを自動生成するときや、「server」コマンドでサーバを起動するときなどです。
図1 「Rack」関係の警告が出るが仕方が無い
でも動作はしますので、今のところは無視してください。JRuby on RailsはJRubyの魅力を増す機能なので、このまま放置されることはないと期待します。
本書第6章までの操作
MySQL
MySQL5.1のダウンロードは、以下のサイトから行えます(ただし2013年末の時点)。
MySQL5.1のダウンロードサイト
データベースドライバ(MySQL)
実行例3のように、バージョンを指定してインストールします。
実行例3 MySQLのドライバモジュール
jruby -S gem install jdbc-mysql -v 5.1.13
jruby -S gem install activerecord-jdbcmysql-adapter -v 1.2.2
本書第7章の操作
warblerの前に、依存モジュールをインストール
warblerをインストールするときに、依存モジュールが一緒にインストールされます。
この中に、新しいバージョンだと不整合を起こすものがあります。そこで、これらの依存モジュールをひとつずつ、先にインストールされるものから順番に、インストールします。
実行例4のようになります。ひとつのインストールが終わるのをまってから、次をインストールしてください。
実行例4 ひとつずつ、この順番で
jruby -S gem install jruby-jars -v 1.6.7.2
jruby -S gem install jruby-rack -v 1.1.6
jruby -S gem install rubyzip -v 0.9.8
以上、3つのモジュールを全てインストールしたのち、warblerもバージョン指定の上、インストールします。
実行例5 最後にwarblerをインストール
jruby -S gem install warbler -v 1.3.5
Tomcat
tomcat7.0のダウンロードは、本書と同様の過程で行えます。
以上のようにバージョンを本書のそれに合わせることにより、実践できるでしょう。
「はじめてのJRuby on Rails」サポートページの目次へ
このサイトの目次へ戻る