Мне было трудно установить jRuby на Rails 3 на Tomcat 6. Он заработал ровно один раз.
Я изменил свои database.yaml и Gemfile, чтобы проверить наличие jRuby, что-то вродеэто:
if defined?(JRUBY_VERSION)
gem 'jdbc-mysql'
#gem 'jdbc-sqlite3'
gem 'activerecord-jdbc-adapter'
gem 'activerecord-jdbcmysql-adapter'
#gem 'activerecord-jdbcsqlite3-adapter'
gem 'jruby-openssl'
gem 'jruby-rack'
gem 'warbler'
else
gem 'mysql'
gem "mongrel"
gem 'ruby-debug'
end
Некоторые настройки среды:
$ rvm -v
rvm 1.0.14
$ jruby -v
jruby 1.5.3 (ruby 1.8.7 patchlevel 249) (2010-09-28 7ca06d7) (Java HotSpot(TM) 64-Bit Server VM 1.6.0_20) [x86_64-java]
Когда я запускаю jruby -S bundle install
, все идет гладко.
Это когда я пытаюсь сделать что-то вроде rake db:migrate
, jruby -S rake db:migrate
или warble
, что я получаю 50 ПРЕДУПРЕЖДЕНИЙ ОБ УСТРОЙСТВЕ и возможный стекопоток.
Я решил эту проблему, удалив плагин warbler, ему не понравилась строка Warbler::Task.new
Затем я запустил warble config
, чтобы получить файл config / warbler.rb.
И, наконец, warble
для создания моего .war-файла.Пока все хорошо.
Теперь я перемещаю файл .war в мои веб-приложения Tomcat.Все работает отлично, за исключением ошибки:
Oct 10, 2010 1:34:46 AM org.apache.catalina.core.ApplicationContext log
SEVERE: Application Error
org.jruby.rack.RackInitializationException:
http://github.com/plataformatec/devise.git (at master) is not checked out.
Please run 'bundle install'
Я решил эту проблему один раз и только один раз, зайдя в мои webapps / myapp / WEB-INF и запустив jruby -S bundle install
Это больше неработает, и я понятия не имею, что происходит.