无法推送到Heroku(找不到Rake 10.3.2)

这里有新手。 我正在使用Ubuntu 14.04虚拟机上的railstutorial.org上的教程。 在我到达heroku之前,它一直很顺利。 当我想将我的应用程序推送到heroku时,它抱怨它无法找到rake-10.3.2。 我检查了heroku,应用程序似乎是空的。 但是,我的应用程序中有rake-10.3.2,如果使用“bundle show rake”,它会显示正确的版本。

brandon@brandon-virtualbox:~/rails_projects/first_app$ bundle show rake /home/brandon/.rvm/gems/ruby-2.0.0-p481@railstutorial_rails_4_0/gems/rake-10.3.2 

看起来没问题,但当我尝试将其推送到heroku时,我得到:

 brandon@brandon-virtualbox:~/rails_projects/first_app$ git push heroku master Initializing repository, done. Counting objects: 66, done. Compressing objects: 100% (55/55), done. Writing objects: 100% (66/66), 14.46 KiB | 0 bytes/s, done. Total 66 (delta 6), reused 0 (delta 0) -----> Ruby app detected -----> Compiling Ruby/Rails -----> Using Ruby version: ruby-2.0.0 -----> Installing dependencies using 1.6.3 Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin -j4 --deployment Fetching gem metadata from https://rubygems.org/.......... Fetching additional metadata from https://rubygems.org/.. Could not find rake-10.3.2 in any of the sources Bundler Output: Fetching gem metadata from https://rubygems.org/.......... Fetching additional metadata from https://rubygems.org/.. Could not find rake-10.3.2 in any of the sources ! ! Failed to install gems via Bundler. ! ! Push rejected, failed to compile Ruby app To git@heroku.com:dry-springs-4465.git ! [remote rejected] master -> master (pre-receive hook declined) error: failed to push some refs to 'git@heroku.com:dry-springs-4465.git' 

我注意到它使用的是2.0.0版本(我已安装),但它正在尝试使用1.6.3安装依赖项。 我不确定这是否与问题有关。 我的Gemfile在这里:

 source 'https://rubygems.org' ruby '2.0.0' #ruby-gemset=railstutorial_rails_4_0 gem 'rails', '4.0.8' group :development do gem 'sqlite3', '1.3.8' end gem 'sass-rails', '4.0.1' gem 'uglifier', '2.1.1' gem 'coffee-rails', '4.0.1' gem 'jquery-rails', '3.0.4' 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' gem 'rails_12factor', '0.0.2' end 

我已经搞砸了一段时间,没有运气。 我也在使用RVM,但我是一个新手,所以我不确定会产生什么样的影响。 如果有人知道发生了什么,我会很感激!

谢谢!

在我的情况下,这是因为我在vendor/cache版本控制下有一些gem,但不是全部。 似乎当vendor/cache存在时,Heroku将不会访问任何其他来源。

我通过将我需要缓存的gem移动到另一个位置,然后从版本控制中删除vendor/cache文件夹来解决了这个问题。