Heroku捆绑错误(Rails应用程序)
我是Ruby on Rails的新手,app正在本地机器上运行
本地捆绑工作
但是当我尝试git push heroku master时 ,这是我得到的错误:
remote: remote: -----> Ruby/Rails app detected remote: -----> Using Ruby version: ruby-1.9.3 remote: -----> Installing dependencies using remote: Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin --deployment remote: /usr/bin/env: ruby1.9.1: No such file or directory remote: ! remote: ! Failed to install gems via Bundler. remote: ! remote: ! Heroku push rejected, failed to compile Ruby/rails app remote:
我的gem文件 :
source 'http://rubygems.org' ruby '1.9.3' gem 'rails', '4.0.0.beta1' group :development, :test do gem 'sqlite3' gem 'rspec-rails' end group :assets do gem 'sass-rails', '~> 4.0.0.beta1' gem 'coffee-rails', '~> 4.0.0.beta1' gem 'therubyracer', platforms: :ruby gem 'uglifier', '>= 1.0.3' end gem 'jquery-rails' gem 'turbolinks' gem 'jbuilder', '~> 1.0.1' group :test do gem 'capybara' end group :production do gem 'pg' end
我错过了什么? 提前致谢!
我有类似的问题。 问题是Bundler正在生成存根。 Rails 4应用程序不会在应用程序的bin /目录中存储存根。 要解决此问题,您需要使用以下命令:
$ bundle config --delete bin
然后,您需要更新bin目录以使用新的Rails 4可执行文件
$ rake rails:update:bin
然后使用以下命令将新bin /目录添加到版本控制:
$ git add bin
提交更改并将代码推送到Heroku
你的ruby PATH
就是问题所在。 所以先看看你跑步时会发生什么
$ heroku run "ruby -v" Running `ruby -v` attached to terminal... up, run.8734 ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux]
你得到类似的输出吗? 如果没有,那么检查你的路径。
$ heroku config -s | grep PATH GEM_PATH=vendor/bundle/ruby/1.9.1 PATH=bin:vendor/bundle/ruby/1.9.1/bin:/usr/local/bin:/usr/bin:/bin
注意, bin
是如何在路径中的。 如果你的遗失,你可以手动设置PATH
并通过以下命令添加bin
。
$ heroku config:set PATH=bin:vendor/bundle/ruby/1.9.1/bin:/usr/local/bin:/usr/bin:/bin