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