为什么我收到此乘客错误无法在任何来源中找到rake-0.9.2.2?

我刚刚创建了一个新的空Rails应用程序,它几乎是空的。 我创建它只是为了试图找出问题,但我收到以下错误。

我正在使用Rails 3.1.0和Ruby 1.9.2

Error message: Could not find rake-0.9.2.2 in any of the sources (Bundler::GemNotFound) Exception class: PhusionPassenger::UnknownError 

所以我将rake-0.9.2.2添加到Gemfile并运行bundle,我仍然收到相同的错误消息。

我不知道问题是什么,我甚至试图打开rails日志文件,但那里什么都没有。

我已经多次尝试以不同方式修复错误,但似乎没有任何工作。

我认为它也可能与资产管道有关。

添加细节

我试着打包gem,现在我得到了这个

 bundle show mysql2 /releases/20111117205618/vendor/bundle/ruby/1.9.1/gems/mysql2-0.3.10 bundle show rails /releases/20111117205618/vendor/bundle/ruby/1.9.1/gems/rails-3.1.0 bundle show bundler /usr/local/rvm/gems/ruby-1.9.2-p290/gems/bundler-1.0.21 

注意bundler gem和其他gem之间的区别。

我修复了同样的错误,将gems打包到vendor / bundle中,如下所示:

从您的app目录中:

 $ bundle install --path vendor/bundle 

试一试并告诉我这是否适合你。

也有这个问题,按照这里的说明修复: http : //blog.ninjahideout.com/posts/the-path-to-better-rvm-and-passenger-integration

我有同样的问题’找不到任何来源的rake-0.9.2.2’,发现我的PATH没有包含/ usr / local / bin。 更新PATH后,它工作正常。

我认为这里最好的答案/解决方案是将以下内容添加到deploy.rb文件中(假设Capistrano):

 bundle install --deployment 

您还可以阅读完整的文章和其他部署引擎 。