項目開發從Ruby換成了JRuby,於是在自己的Mac上安裝JRuby和Rails。過程大同小異,不過有一些稍微值得注意的地方。
我的系統是Mac OS X 10.5.5,安裝JRuby 1.1.6,開發使用Sqlite3。
0. 準備
已經安裝JDK 5或以上版本
已經安裝Ant
(其實Mac上已經裝好了)
1. 安裝JRuby
1.1安裝JRuby
下載jruby-bin-1.1.6.tar.gz ,解壓縮後把目錄jruby-1.1.6放到到合適的地方,比如/usr/lib/目錄下。
然後把jruby添加到PATH中:
修改~/.bash_profile文件,最後增加兩行RUBY_HOME,並修改PATH如下:
export RUBY_HOME=/usr/lib/jruby-1.1.6
export PATH=$RUBY_HOME/bin:/Users/user/.gem/ruby/1.8/bin:$PATH
然後刷新profile文件:
source ~/.bash_profile
2. 安裝Rails
2.1安裝rails
jgem install rails --no-rdoc --no-ri
或:jruby -S gem install rails --no-rdoc --no-ri (下同)
2.2 安裝rake
jgem install rake
2.3 安裝activerecord-jdbc
使用sqlite3,所以用:
jgem install activerecord-jdbcsqlite3-adapter --no-rdoc --no-ri
如果使用mysql,則用:
jgem install activerecord-jdbcmysql-adapter –-no-rdoc –-no-ri
注:上面的安裝方式比較簡單。如果分別安裝activerecord-jdbc-adapter 和sqlite3-ruby ,會有以下錯誤:
Building native extensions. This could take a while...
/usr/lib/jruby-1.1.6/lib/ruby/1.8/mkmf.rb:7: JRuby does not support native extensions. Check wiki.jruby.org for alternatives. (NotImplementedError)
from /usr/lib/jruby-1.1.6/lib/ruby/1.8/mkmf.rb:1:in `require'
from extconf.rb:1
ERROR: Error installing sqlite3-ruby:
ERROR: Failed to build gem native extension.
2.3 安裝openssl
上面安裝時一直有錯誤提示:
JRuby limited openssl loaded. gem install jruby-openssl for full support.
http://wiki.jruby.org/wiki/JRuby_Builtin_OpenSSL
這樣安裝一下openssl就可以了:
jruby -S gem install jruby-openssl
使用時注意修改database.yml中的adapter:
development:
adapter: jdbcsqlite3
database: db/development.sqlite3
timeout: 5000
下面你就可以開始使用JRuby on Rails了。
參考文章:
Get JRuby onto the Rails on Mac OS X (注:此文有一些錯誤,後面的評論給了糾正)
TOTD #37: SQLite3 with Ruby-on-Rails on GlassFish Gem