【发布时间】:2012-02-17 15:04:09
【问题描述】:
我无法在 heroku 上推送我的 rails 应用程序。在我的本地服务器中,执行“捆绑安装”没有问题,我的应用程序运行良好。 当我运行“git push heroku master”时,我有这个错误
在任何来源中都找不到 libv8-3.3.10.3 ! !无法通过 Bundler 安装 gem。 ! ! Heroku 推送被拒绝,无法编译 Ruby/rails 应用程序我的本地配置是: - Mac OS 狮子 - 导轨 3.1.0 - 红宝石 1.9.2
我的 heroku 堆栈是 Cedar。
我的 Gemfile 是:
source 'http://rubygems.org'
gem 'rails', '3.1.0'
# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'
# Gems used only for assets and not required
# in production environments by default.
group :assets do
# gem 'sass-rails', '~> 3.1.4'
gem 'coffee-rails', '~> 3.1.0'
gem 'uglifier', '>= 1.0.3'
end
gem 'jquery-rails'
gem "rspec-rails", ">= 2.7.0", :group => [:development, :test]
gem "database_cleaner", ">= 0.6.7", :group => :test
gem "mongoid-rspec", ">= 1.4.4", :group => :test
gem "factory_girl_rails", ">= 1.3.0", :group => :test
gem "cucumber-rails", ">= 1.1.1", :group => :test
gem "capybara", ">= 1.1.1", :group => :test
gem "launchy", ">= 2.0.5", :group => :test
gem "bson_ext", ">= 1.3.0"
gem "mongoid", ">= 2.0.1"
gem "omniauth", ">= 0.3.0"
gem 'omniauth-facebook'
gem "devise", ">= 1.4.7"
gem "fb_graph", ">= 2.2.3"
gem 'less-rails-bootstrap'
gem 'chronic'
gem 'thin'
gem 'heroku'
在本地的 Gemfile.lock 中,我安装了 libv8 (3.3.10.4)。
我尝试了“捆绑更新”,我尝试在我的 Gemfile 中添加“libv8”。没有任何效果。 有人有想法吗?
更新:
我的 Gemfile.lock 包含 libv8 两次:
GEM
specs
...
libv8 (3.3.10.4)
...
therubyracer (0.9.9)
libv8 (~> 3.3.10)
...
Gemfile.lock 的“DEPENDENCIES”部分没有任何内容:
DEPENDENCIES
bson_ext (>= 1.3.0)
capybara (>= 1.1.1)
chronic
coffee-rails (~> 3.1.0)
cucumber-rails (>= 1.1.1)
database_cleaner (>= 0.6.7)
devise (>= 1.4.7)
factory_girl_rails (>= 1.3.0)
fb_graph (>= 2.2.3)
heroku
jquery-rails
launchy (>= 2.0.5)
less-rails-bootstrap
mongoid (>= 2.0.1)
mongoid-rspec (>= 1.4.4)
omniauth (>= 0.3.0)
omniauth-facebook
rails (= 3.1.0)
rspec-rails (>= 2.7.0)
thin
uglifier (>= 1.0.3)
“gem list libv8”的结果
*** LOCAL GEMS ***
libv8 (3.3.10.4 x86_64-darwin-11)
“宝石环境”的结果
RubyGems Environment:
- RUBYGEMS VERSION: 1.8.15
- RUBY VERSION: 1.9.2 (2011-07-09 patchlevel 290) [x86_64-darwin11.2.0]
- INSTALLATION DIRECTORY: /Users/user/.rvm/gems/ruby-1.9.2-p290
- RUBY EXECUTABLE: /Users/user/.rvm/rubies/ruby-1.9.2-p290/bin/ruby
- EXECUTABLE DIRECTORY: /Users/user/.rvm/gems/ruby-1.9.2-p290/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-darwin-11
- GEM PATHS:
- /Users/user/.rvm/gems/ruby-1.9.2-p290
- /Users/user/.rvm/gems/ruby-1.9.2-p290@global
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- http://rubygems.org/
【问题讨论】:
-
您的应用程序是否使用正确的 3.1 堆栈 - 即 Cedar?
-
是的,我在 heroku 上使用雪松堆栈。我遵循了本指南:railsapps.github.com/rails-heroku-tutorial.html
-
请发布所有包含
libv8的 Gemfile.lock 行,以便我们可以看到所有依赖项,它应该至少显示两次,可能更多。请发布gem list libv8的结果,以便我们准确查看安装了哪些 gem。请发布gem environment的结果,以便我们查看您的 gem 安装在本地的位置。 -
感谢您的评论。我刚刚用你所问的结果更新了我的问题。
-
我之前在使用 rubyracer 运行时编译咖啡脚本时遇到了问题。我目前有两个heroku 3.1 应用程序,我都没有指定运行时间。 pastie.org/3243364pastie.org/3243366。查看锁文件,它正在使用 execjs
标签: ruby-on-rails heroku gem bundle