为什么我的Heroku推被拒绝了?

时间:2013-05-29 03:49:41

标签: ruby-on-rails ruby

我正在研究Hartl's Rails 4.0 tutorial的第1章,我坚持第1.4.2节,即将黑色应用程序推入GitHub和Heroku。

我尝试输入git push heroku master,但是收到错误消息,类似于上一个关于StackOverFlow的问题:

它可能是相同的,但我甚至没有意识到:

-----> Ruby/Rails app detected
-----> Installing dependencies using 
       Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin --deployment
       /usr/bin/env: ruby1.9.1: No such file or directory
 !
 !     Failed to install gems via Bundler.
 !
 !     Heroku push rejected, failed to compile Ruby/Rails app

这是我使用的Gemfile:

source 'https://rubygems.org'
ruby '1.9.3'

gem 'rails', '4.0.0.rc1'

group :development do
  gem 'sqlite3', '1.3.7'
end

gem 'sass-rails', '4.0.0.rc1'
gem 'uglifier', '2.1.1'
gem 'coffee-rails', '4.0.0'
gem 'jquery-rails', '2.2.1'
gem 'turbolinks', '1.1.1'
gem 'jbuilder', '1.0.2'

group :doc do
  gem 'sdoc', '0.3.20', require: false
end

group :production do
  gem 'pg', '0.15.1'
end

更新:主要错误似乎是/usr/bin/env: ruby1.9.1: No such file or directory Heroku机器或家用电脑上的文件夹是?

我尝试从我的ruby '1.9.3'中删除该行.gitignore,但它仍会返回此消息。

3 个答案:

答案 0 :(得分:0)

首先,从ruby 1.9.3删除Gemfile。您不需要它,可能是您的问题的原因。 Gemfile的开头应如下所示:

source 'https://rubygems.org'

gem 'rails', '4.0.0.rc1'

group :development do
  gem 'sqlite3', '1.3.7'
end

etc........

另外,请确保您运行

bundle install --without production 

因为您在sqlite3 :developmentpostgresql中使用:production

答案 1 :(得分:0)

我有类似的问题。问题是Bundler正在生成存根。 Rails 4应用程序不会在应用程序的bin /目录中存储存根。要解决此问题,您需要使用以下命令:

$ bundle config --delete bin

然后,您需要更新bin目录以使用新的Rails 4可执行文件

$ rake rails:update:bin

然后使用以下命令将新bin /目录添加到版本控制中:

$ git add bin

提交更改并将代码推送到Heroku

答案 2 :(得分:0)

我有同样的问题,问题是我没有选择我想要使用的ruby版本,所以我做了以下内容:

$rvm list
   ruby-1.9.3-p392 [ i686 ]
   ruby-2.0.0-p247 [ i686 ]

$rvm use  ruby-1.9.3-p392

$rvm list 
    =>   ruby-1.9.3-p392 [ i686 ]
    ruby-2.0.0-p247 [ i686 ]
相关问题