改叫 JRoR 嗎?還是 JoR 呢? :p

當下載 JRuby 回來使用時,裡面就已經搭載好了 JRuby 版本的 Ruby Gems,同時也就可以直接

# gem install –no-rdoc –no-ri rails

來安裝 Rails 使用,但是,原本在傳統 Ruby on Rails 中最常使用的 ruby-mysql API 在 JRuby 中是無法安裝的,因為 JRuby 沒有 mkmf 所以無法 build 這個 API,所以必須利用 ActiveRecord-JDBC 來利用 JDBC 連接到像 MySQL 這樣的資料庫,安裝的方法也很簡單:

# gem install –no-rdoc –no-ri ActiveRecord-JDBC

然後,當你用 rails <app_name> 產生 Rails application 後,要在 $APP/config/environment.rb 中的 Rails::Initializer.run do |config| 之前加上:


if RUBY_PLATFORM =~ /java/
    require 'rubygems'
    RAILS_CONNECTION_ADAPTERS = %w(jdbc)
end

當然,$APP/config/database.yml 也要作一些修改,像是這樣:


development:
    adapter: jdbc
    driver: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/foo_development
    username: foo
    password: bar

最後,別忘了要設定你的 $CLASSPATH 環境變數,讓它指到 jdbc mysql driver 的檔案。

如此一來,便能夠 JRuby on Rails 了!

 

歷史上的今天