2011-09-29 44 views
2

我不知道为什么我得到这个?找不到耙0.9.2在任何来源

$ which rake 
/Users/kamilski81/.rvm/gems/[email protected]/bin/rake 
[~/Sites/work/depot, [email protected]] 
$ /Users/kamilski81/.rvm/gems/ruby-1.9.2-p290\@depot/bin/rake test 
Could not find rake-0.9.2 in any of the sources 
Run `bundle install` to install missing gems. 

后,我做了一个“包安装”我得到:

Installing sqlite3 (1.3.4) with native extensions 
Installing turn (0.8.2) 
Installing uglifier (1.0.3) 
Updating .gem files in vendor/cache 
Your bundle is complete! It was installed into ./rake 

,并安装我的所有宝石到./rake我的根目录的......烦了。

回答

7

看起来您在某个时间键入bundle install rake

bundle命令不采用gem的名称进行安装。相反,参数“rake”是您安装捆绑宝石的文件夹的名称。

如果您查看当前的项目文件夹,您将看到一个隐藏的.bundle目录。其中的配置文件会跟踪您如何设置捆绑软件安装选项,并记住您在下次运行捆绑软件安装时设置的目录。最简单的方法是从该配置文件中删除该选项,然后在没有第三个参数的情况下重新运行bundle install

这个问题的第二部分是,不同的捆绑软件将安装他们自己版本的命令,如rake。为了运行正确的版本,请使用bundler运行bundle exec rake而不是rake

1

对于我补充说:

source 'https://rubygems.org' 

我Gemfile中解决了这个问题。出于某种原因,我以前删除它。感谢Andrew最初提供.bundle目录的提示。

+0

这为我修好了。我知道我没有从我的Gemfile中删除它。我正在安装画布LMS。 – joshmmo

1

添加--development参数一次以安装来自rubygems.org的所有开发依赖项。

所以,如果你想运行:

bundle exec rake build 

改为运行:

bundle --development exec rake build 

你会看到正在安装任何缺少发展的依赖性,包括rake 0.9.2

此后--development参数可以在重建时删除。

请注意,这种方法也意味着你不需要需要添加source http://rubygems.org你写的每一个宝石。

相关问题