therubyracer драгоценный камень на окнах
Я мирно разрабатывал для Windows, не добавляя никаких драгоценных камней в течение нескольких недель, и сегодня я решил сделать пакетное обновление, но я не могу пройти через этот драгоценный камень под названием therubyracer. У меня установлен devkit, и он работает в соответствии с процедурой проверки документации.
Мой вопрос: есть ли способ установить этот драгоценный камень вообще на Windows?
И будет ли этот драгоценный камень востребован в rails 3.1, и именно поэтому теперь, когда я делаю обновление комплекта, он "проскальзывает" в rails 3.0.8 как жест раннего старта для будущей миграции 3.1?
РЕДАКТИРОВАТЬ, включая Gemfile и Gemfile.lock
# Gemfile
# source 'http://rubygems.org'
source :rubygems
gem 'rails'
gem 'rake', '0.8.7'
gem 'youtube_it'
gem 'panda'
gem "nifty-generators"
# gem "mongoid", "2.0.0.rc.7"
gem "mongoid"
gem "mongoid-eager-loading"
# gem 'mongoid_search'
gem "bson_ext", ">1.1.5"
gem 'devise'
gem 'cancan'
gem 'hirb'
# gem 'heroku'
gem 'rest-client'
gem 'less' # needs the more plugin
# gem 'hash_extension'
gem 'aws-s3', :require => 'aws/s3' # s3.rb
gem 'jquery-rails', ">= 0.2.7" # rails g jquery:install
# gem 'mongrel', ">= 1.2.0.pre2"
gem 'delayed_job'
gem 'delayed_job_mongoid'
gem 'kaminari'
# Gemfile.lock
GEM
remote: http://rubygems.org/
specs:
abstract (1.0.0)
actionmailer (3.0.8)
actionpack (= 3.0.8)
mail (~> 2.2.19)
actionpack (3.0.8)
activemodel (= 3.0.8)
activesupport (= 3.0.8)
builder (~> 2.1.2)
erubis (~> 2.6.6)
i18n (~> 0.5.0)
rack (~> 1.2.1)
rack-mount (~> 0.6.14)
rack-test (~> 0.5.7)
tzinfo (~> 0.3.23)
activemodel (3.0.8)
activesupport (= 3.0.8)
builder (~> 2.1.2)
i18n (~> 0.5.0)
activerecord (3.0.8)
activemodel (= 3.0.8)
activesupport (= 3.0.8)
arel (~> 2.0.10)
tzinfo (~> 0.3.23)
activeresource (3.0.8)
activemodel (= 3.0.8)
activesupport (= 3.0.8)
activesupport (3.0.8)
arel (2.0.10)
aws-s3 (0.6.2)
builder
mime-types
xml-simple
bcrypt-ruby (2.1.4-x86-mingw32)
bson (1.3.1)
bson_ext (1.3.1)
builder (2.1.2)
cancan (1.6.5)
daemons (1.1.3)
delayed_job (2.1.4)
activesupport (~> 3.0)
daemons
delayed_job_mongoid (1.0.2)
delayed_job (~> 2.1.1)
mongoid (~> 2.0.0.rc)
devise (1.3.4)
bcrypt-ruby (~> 2.1.2)
orm_adapter (~> 0.0.3)
warden (~> 1.0.3)
erubis (2.6.6)
abstract (>= 1.0.0)
hirb (0.4.5)
i18n (0.5.0)
jquery-rails (1.0.10)
railties (~> 3.0)
thor (~> 0.14)
json (1.5.2)
kaminari (0.12.4)
rails (>= 3.0.0)
less (1.2.21)
mutter (>= 0.4.2)
treetop (>= 1.4.2)
mail (2.2.19)
activesupport (>= 2.3.6)
i18n (>= 0.4.0)
mime-types (~> 1.16)
treetop (~> 1.4.8)
mime-types (1.16)
mongo (1.3.1)
bson (>= 1.3.1)
mongoid (2.0.2)
activemodel (~> 3.0)
mongo (~> 1.3)
tzinfo (~> 0.3.22)
mongoid-eager-loading (0.3.1)
mutter (0.5.3)
nifty-generators (0.4.6)
oauth (0.4.4)
orm_adapter (0.0.5)
panda (1.4.2)
json
rest-client
ruby-hmac (>= 0.3.2)
polyglot (0.3.1)
rack (1.2.3)
rack-mount (0.6.14)
rack (>= 1.0.0)
rack-test (0.5.7)
rack (>= 1.0)
rails (3.0.8)
actionmailer (= 3.0.8)
actionpack (= 3.0.8)
activerecord (= 3.0.8)
activeresource (= 3.0.8)
activesupport (= 3.0.8)
bundler (~> 1.0)
railties (= 3.0.8)
railties (3.0.8)
actionpack (= 3.0.8)
activesupport (= 3.0.8)
rake (>= 0.8.7)
thor (~> 0.14.4)
rake (0.8.7)
rest-client (1.6.1)
mime-types (>= 1.16)
ruby-hmac (0.4.0)
thor (0.14.6)
treetop (1.4.9)
polyglot (>= 0.3.1)
tzinfo (0.3.28)
warden (1.0.4)
rack (>= 1.0)
xml-simple (1.0.16)
youtube_it (1.4.2)
builder
oauth (>= 0.4.4)
PLATFORMS
x86-mingw32
DEPENDENCIES
aws-s3
bson_ext (> 1.1.5)
cancan
delayed_job
delayed_job_mongoid
devise
hirb
jquery-rails (>= 0.2.7)
kaminari
less
mongoid
mongoid-eager-loading
nifty-generators
panda
rails
rake (= 0.8.7)
rest-client
youtube_it
5 ответов
Нет, я не знаю, как установить этот драгоценный камень на Windows. Проблема в том, что в настоящее время нет предварительно скомпилированной версии гема libv8 для Windows, а исходная версия совместима только с *nix. Это не обязательно должно быть так, просто нужно, чтобы кто-то нашел время, чтобы компиляция работала для Windows. https://github.com/fractaloop/libv8
Тем не менее, Windows должна поставляться с JScript, средой выполнения Microsoft JavaScript, которую рельсы (через execjs) будут автоматически обнаруживать и использовать, поэтому вы сможете просто удалить свою зависимость от therubyracer.
Как хранитель этого драгоценного камня, это, конечно, заставило бы меня огорчиться, но оно должно помочь вам в этом.
По сути, это то, что сделал Ник, я считаю:
В вашем Gemfile изолируйте гем TheRubyRacer для производственной среды, например:
group :production do
gem 'therubyracer-heroku', :platform => :ruby
end
В вашей среде разработки вместо простого bundle install
делать
bundle install --without production
или, как предполагает Ник, bundle install development
, При развертывании в Heroku он установит гем, потому что это производственная среда.
Гуру Rails: пожалуйста, предложите правки, чтобы сделать это менее отстойным.
Причиной всех этих проблем является therubyracer-0.11.0beta1-x86-mingw32.gem и v8.dll.
Я собрал необходимые библиотеки dll и gem и загрузил их на github.
скачайте пакет и следуйте инструкциям.
Существует сборка для окон. Он может быть загружен и установлен вручную gem install therubyracer-0.11.0beta1-x86-mingw32.gem
,
Чтобы ответить на часть вашего вопроса о Rails 3.1, вот сделка...
Rails 3.1 в настоящее время использует гем, который требует, чтобы на компьютере была установлена среда исполнения javascript. На Mac вам обычно не нужно беспокоиться об этом, поскольку он уже есть, но Linux (и я думаю, что и Windows) вам нужно установить. Итак, therubyracer, или иногда node или nodejs, иногда устанавливаются, поскольку они предоставляют это.
Однако один из основных ребят из Rails сказал, что планирует исправить эту зависимость до финального релиза Rails 3.1, так что надеюсь, что это произойдет, и зависимость исчезнет.