2012-12-09 70 views
2

我在安装我的更新时收到错误消息。这是我的Gemfile:安装therubyracer时出错

source 'https://rubygems.org' 

gem 'rails', '3.2.1' 

# Bundle edge Rails instead: 
# gem 'rails', :git => 'git://github.com/rails/rails.git' 

gem 'mysql2' 
gem 'libv8' 
gem 'therubyracer' 
gem 'haml' 
gem 'haml-rails' 
gem 'sass-rails', '~> 3.2.3' 
gem 'coffee-rails', '~> 3.2.1' 
gem 'compass-rails' 
gem 'chosen-rails' 
gem "bootstrap-wysihtml5-rails", "~> 0.3.1.10" 
gem 'hpricot' 
gem "rest-open-uri", "~> 1.0.0" 
gem 'jquery-datatables-rails', github: 'rweng/jquery-datatables-rails' 

# Gems used only for assets and not required 
# in production environments by default. 
group :assets do 

    # See https://github.com/sstephenson/execjs#readme for more supported runtimes 
    # gem 'therubyracer' 

    gem 'uglifier', '>= 1.0.3' 
    gem "commonjs", "~> 0.2.6" 
    gem "less", "~> 2.2.2" 
    gem "less-rails", "~> 2.2.6" 
end 


gem 'jquery-rails' 
gem 'simple_form' 
gem 'client_side_validations' 
gem 'client_side_validations-simple_form' 

# To use ActiveModel has_secure_password 
gem 'bcrypt-ruby', '~> 3.0.0' 

这里是一个错误运行捆绑在生产安装命令后,我得到:

时出现错误,安装therubyracer(0.11.0)和捆扎机 无法继续。确保在捆绑之前gem install therubyracer -v '0.11.0' 成功。

+1

你尝试运行的捆绑安装之前手动安装libv8?它是唯一的错误信息吗? –

回答

1
group :assets do 
    gem 'therubyracer' 
end 

如果仍然无法正常工作,只是尽量在Gemfile到intall的NodeJS

2

我做了一个宝石卸载therubyracer &宝石unin失速libv8,然后从Gemfile中删除libv8,只使用therubyracer,然后运行“包安装”

7

我没有为我工作如下:

  • 我从我的Gemfile
  • 跑注释掉therubyracer “包安装”
  • 使用“创业板安装therubyracer”安装的therubyracer最新的版本(在写这篇是0.11.2时间)
  • 我注释掉therubyracer把它放回我的Gemfile
  • 再次运行“捆绑安装”,一切正常
+1

我运行'''捆绑包更新therubyracer''',并为我解决。我想我的v8安装不符合我正确的'''therubyracer'''版本。 –

+0

2018年,我在这里...在AWS上CLOUD9 '创业板安装therubyracer'导致'成功安装therubyracer-0.12.3' 把宝石回到我的Gemfile结果 '捆扎机找不到兼容版本的宝石“libv8”:'+'在Gemfile中:mini_racer被解析为0.1.3,这取决于libv8(〜> 5.0)'+'therubyracer(= 0.12.3)解析为0.12.3,这取决于libv8(〜> 3.16.14.15)'+ 'Bundler无法找到适用于gem“mini_racer”的兼容版本:在Gemfile中:mini_racer' +'无法在任何源中找到gem'mini_racer'.' – starpause

0

可能,您的libv8版本和therubyracer版本不匹配。

所以,要么你可以包含在Gemfile中适当libv8版本,这是类似于 jibiel的解决方案

gem 'libv8', '~> 3.11.8.3' 

但是,我宁愿做这两个步骤,所以,您不要有担心找不到libv8的正确版本:

Gemfile

gem 'therubyracer' 

terminal

gem uninstall libv8 
bundle install 

而且,这是我做了什么来解决我同样的问题