therubyracer не в состоянии построить на героку - PullRequest
2 голосов
/ 07 июня 2011

Я создал приложение на Rails 3.1 PoC, которое также использует haml, адаптировав примеры из книги railstutorial.org, и локально все работает нормально.
Но когда я пытаюсь нажать на heroku , therubyracer не удается создать на сервере ( полный вывод ) :

Installing therubyracer (0.8.2) with native extensions /usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/installer.rb:483:in `build_extensions': ERROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError)

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

Ответы [ 3 ]

4 голосов
/ 16 января 2013

Эти ответы устарели. Теперь вы можете просто использовать therubyracer в обеих средах, если у вас есть версия '> = 0.11.2'

Я должен отметить, что я являюсь автором therubyracer и использую его в нескольких производственных приложениях heroku как во время компиляции ресурсов, так и во время выполнения

1 голос
/ 11 января 2013

Heroku больше не требуется, но настоятельно не рекомендует , используя therubyracer или therubyracer-heroku, так как эти драгоценные камни используют очень большой объем памяти.

Если вы используете их, ваше следующее развертывание не удастся!

У вас есть 2 варианта:

  1. Добавьте 'therubyracer', :platforms => :ruby к group :assets и обновите свою версию ruby. Затем удалите свой Gemfile.lock и запустите bundle install.

  2. Запустите assets:precompile на своем локальном компьютере и отправьте их к герою (не забудьте удалить драгоценные камни therubyracer из производства);

  3. Конвейер ресурсов Rails по умолчанию поддерживает язык Sass. Вместо rails-bootstrap драгоценного камня (МЕНЬШЕГО) вы можете использовать bootstrap-sass-rails
1 голос
/ 07 июня 2011

Вам нужно использовать therubyracer-heroku .

Просто определите пару групп в вашем Gemfile, чтобы установить правильную группу там, где это необходимо.

group :development, :test do
  gem 'therubyracer'
end

group :production do
  gem 'therubyracer-heroku'
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...