Использование JRuby с Rails 3.2

Кто-нибудь имел успех с установкой Rails 3.2 и JRuby 1.6.5 на Mac OSX Lion с использованием RVM? Я планирую использовать TorqueBox с NGINX на моем производственном сервере, и я пытаюсь имитировать как можно больше технологий разработки на моей машине разработки. Я не смог установить TorqueBox на свой рабочий сервер, и до сих пор с моей установкой OSX RVM я получаю несколько ошибок из существующего приложения Rails 3.2, которое отлично работает с 1.9.2 и REE.

Проблема, которую я испытываю, заключается в следующем:

ld: -rpath может использоваться только для Mac OS X 10.5 или более поздней версии. collect2: ld вернул 1 состояние завершения make: * [GEM.bundle] Ошибка 1

Где GEM - это любой из нескольких Gems, которые не работают при установке с JRuby (1.6.5).

По сути, я спрашиваю, что если бы я не использовал JRuby на моей машине разработчика и придерживался только 1.9.2, а затем использовал JRuby только на рабочей машине, то действительно ли это проблема? Или я должен продолжать пытаться заставить его работать на Льва?

--- РЕДАКТИРОВАТЬ ---

Пока что это работает с 1.6.6, но Rails 3.2, кажется, зависает при первом доступе после его загрузки. Нет ошибок в консоли. Есть идеи?

3 ответа

Решение

Проблема, которую вы описываете -rpath это http://bugs.jruby.org/6199. Это исправлено в JRuby 1.6.6.

Расширения C не особенно рекомендуются для использования с JRuby в производстве. Они работают по большей части (некоторые все еще терпят неудачу), но они могут быть довольно медленными. Пожалуйста, обратитесь к https://github.com/jruby/jruby/wiki/C-Extension-Alternatives и использовать jruby-lint чтобы узнать, сможете ли вы избавиться как можно больше от своих расширений Си.

Моя личная рекомендация - максимально приблизить вашу машину для разработки к производственной машине, но не забывайте о деталях. Вы должны быть продуктивны на своей машине разработки, но вы не хотите ложного чувства непобедимости, когда рабочая среда Ruby полностью отличается от той, что на вашей машине разработки.

Чарльз Наттер написал в Твиттере о том, что JRuby 1.6.6 необходим для Rails 3.2.

Я мог бы обновить свой проект до Rails 3.2 после обновления JRuby

JRuby 1.6.6 и более поздние версии не работают на Solaris. http://jira.codehaus.org/browse/JRUBY-6494

В настоящее время Rails 3.2 не поддерживается JRuby в Solaris.

Другие вопросы по тегам