therubyracer в Windows - как изменить файл драгоценного камня?

Я хочу запустить сервер heroku и после установки рубиновых и рубиновых драгоценных камней хотел запустить «установку пакета». Я получил ошибку компиляции при попытке установить therubyracer и понял, что это связано с тем, что therubyracer не работает в Windows отсюда< /а>. По другим нескольким вопросам предлагается изменить файл gem, чтобы он не включал therubyracer в Windows, а вместо этого использовал execjs. Я скачал execjs, но как изменить файл gem?

это мой текущий файл драгоценного камня:

source 'https://rubygems.org'

gem 'sinatra'
gem 'sinatra-contrib'
gem 'heroku'

group :development do
   gem 'less'
end

это предложения, сделанные здесь и здесь

gem 'therubyracer-heroku', '~> 0.8.1.pre3', :platform => :ruby
gem 'therubyracer', :platform => :ruby

Я попытался вставить любую из этих строк, но это не сработало (запуск «установки пакета» все еще пытался установить therubyracer, но не удалось). Поэтому я подозреваю, что должен добавить :platform => :ruby еще где.

Может ли кто-нибудь указать мне, как изменить мой файл gem, чтобы решить эту проблему?

Спасибо!

PS: используя Руби 1.9.3.


person franka    schedule 15.03.2012    source источник
comment
Я не совсем понимаю ваш вопрос - зачем вы хотите установить rubyracer и/или execjs? Развернуть на героку или по другой причине? Что именно вы пытаетесь сделать, что не работает, и как выглядит ошибка?   -  person John Bachir    schedule 15.03.2012
comment
извините за неясность. Я пытаюсь выполнить «установку пакета» для развертывания на героку, но получаю сообщение об ошибке, что для этого необходимо установить «therubyracer». Тем не менее, как я читал, therubyracer недоступен для Windows, поэтому вместо этого я пытаюсь использовать execjs.   -  person franka    schedule 15.03.2012
comment
Я думаю, мне также интересно, как выяснить, какие из драгоценных камней в файле драгоценных камней имеют зависимости от этого таинственного therubyracer, и как я могу изменить файл драгоценных камней, чтобы игнорировать эту зависимость.   -  person franka    schedule 15.03.2012
comment
Это новое приложение для героку? Если это так, то вам следует использовать кедровый стек (heroku create --stack cedar), если это возможно. Кроме того, к вашему сведению, exec JS должен использовать среду выполнения javascript. Итак, вы устанавливаете execjs, а затем одну из перечисленных сред выполнения: github.com/sstephenson/execjs#readme   -  person John Bachir    schedule 15.03.2012
comment
Execjs может использовать любую среду выполнения javascript, включая rubyracer. Я почти уверен, что rails по умолчанию использует execjs, поэтому проблема может заключаться в том, что среда выполнения javascript не установлена.   -  person Max    schedule 15.03.2012
comment
Да, мы разрабатываем новое приложение для героку. И да, еще не установил среду выполнения js, хороший момент - попробую сейчас. Спасибо!   -  person franka    schedule 15.03.2012
comment
неважно, у вас уже установлен node.js. Тем не менее, запуск «установки пакета» с вышеуказанным файлом драгоценного камня заставляет систему пытаться установить therubyracer, что не удается...   -  person franka    schedule 15.03.2012
comment
У вас есть другие идеи, как я могу это решить? Где/как я могу удалить зависимость от therubyracer в этом файле гема?   -  person franka    schedule 15.03.2012
comment
посмотрите в Gemfile.lock - какие драгоценные камни зависят от therubyracer?   -  person John Bachir    schedule 15.03.2012
comment
это не упоминается в Gemfile.lock.   -  person franka    schedule 16.03.2012


Ответы (1)


Если вы используете therubyracer только для компиляции ассетов и выполняете развертывание на cedar, то теперь вы можете убрать оба этих гема из своего Gemfile, и heroku сделает все правильно.

Из документации heroku:

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

person John Bachir    schedule 15.03.2012
comment
Как видно выше, ни therubyracer-heroku, ни therubyracer в настоящее время в моем файле гема нет. - person franka; 15.03.2012