jruby-1.0.0RC1を使ってみる(4)

この前、scaffoldやったりwebrickでアクセスしたときにエラーが出ていたけど、そもそも環境設定があやしかった。


JRuby on Railsをインストールするには?をみて、環境設定をやりなおし。
gemでインストールするときにjrubyを指定してなかったな・・
ということは、ネイティブRubyから作ったRailsアプリはそのままJRubyでは動かないってこと??


環境設定。

[bird@fc5 jruby-1.0.0RC1]$ jruby $JRUBY_HOME/bin/gem install rails --include-dependencies

[bird@fc5 sandbox]$ jruby $JRUBY_HOME/bin/rails j-memo


でもjrubyでsqlite3-rubyをインスコできなかった・・
エラーになってしまった。調べるの面倒なのでmysqlでやる。


ではscaffoldを・・

[bird@fc5 j-memo]$ jruby script/generate scaffold memo memo
      exists  app/controllers/
      exists  app/helpers/
      create  app/views/memo
      exists  app/views/layouts/
      exists  test/functional/
  dependency  model
      exists    app/models/
      exists    test/unit/
      exists    test/fixtures/
   identical    app/models/memo.rb
   identical    test/unit/memo_test.rb
        skip    test/fixtures/memos.yml
can't convert nil into String

あれ??


エラー内容が出てるところを調べると、hostとportがnilなのが悪いらしい。
config/database.ymlにhostとportを追加。

development:
  adapter: mysql
  database: test
  username: jmemo
  password: jmemo
  host: localhost
  port: 3306
  socket: /var/lib/mysql/mysql.sock


これでやっとJRuby on Railsが動いたー。
これからとりあえずH2とかとjdbcでつなげてみようかなー。


なんかログみると、ネイティブRailsの方が若干速い雰囲気があるけど・・
あと、script/consoleしたらjavaプロセスがCPU100パーになって制御できなくなった。
fastercsvでパースしたときも。
vmware上のfedora core5だけども。