install JRuby and ActiveRecord−JDBC

福岡でThomasとお話しできたからっていうのもあるけど、ActiveRecordJDBCHSQLDBのデータからマイグレーションしたくなったので、前に一度試したけど、もう一回おさらいします。

JRuby

http://jruby.codehaus.org/Getting+Started を見ながらJRubyをインストールします。

  1. JDKのバージョンが1.4以上であることを確認。(Sunのダウンロード, Ubuntuの場合)
  2. http://dist.codehaus.org/jruby からJRubyの最新をダウンロード
  3. 解凍
  4. JRubyディレクトリをパスに追加。
  5. これでいけるっす!
> jruby -v
ruby 1.8.5 (2007-06-07 rev 3841) [x86-jruby1.0]

僕のWindows環境では、JRUBY_HOMEを設定しておいて PATHには %JRUBY_HOME%\bin を追加しました。
これで jirb も使えるはず。

ActiveRecord-JDBC

http://jruby-extras.rubyforge.org/ActiveRecord-JDBC/ を見ながらインストール。
1. JRubyでgemからインストール

> jruby --command gem install ActiveRecord-JDBC

jrubyの方にrailsが入ってなかったらrailsもインストールしておきましょう。

> jruby --command gem install rails --include-dependencies

2. 下のコードが動くかどうかをjirbで確認。
jirbを起動する前に、環境変数CLASSPATHjdbcクライアントのjarあるいはディレクトリへのパスを追加しておきます。

jirb> require 'rubygems'
jirb> gem 'ActiveRecord-JDBC'
jirb> require 'jdbc_adapter'
jirb> require 'active_record'

3. そしたらJDBCで接続できるっす

jirb> ActiveRecord::Base.establish_connection(
jirb>    :adapter => 'jdbc',
jirb>    :driver => 'org.hsqldb.jdbcDriver',
jirb>    :url => 'jdbc:hsqldb:hsql://localhost/',
jirb>    :username => 'sa'
jirb> )
=> #<ActiveRecord::Base::ConnectionSpecification:0xc5186e @config={:adapter=>"jdbc", :driver=>"org.hsqldb.jdbcDriver", :url=>"jdbc:hsqldb:hsql://localhost/", :u
sername=>"sa"}, @adapter_method="jdbc_connection">