我正在开发一个我继承的应用程序,所以有时候遇到与我无法解决的配置相关的东西。长话短说:我使用rbenv来管理我本地机器上的ruby版本,最近我试图删除一个我不会使用的Ruby版本,并且意外删除了我的应用程序中使用的版本(版本是1.9.3- P392)。
所以我使用rbenv重新安装1.9.3-p392并在我的app目录中运行bundle install
但是出现以下错误:
Could not find gem 'gemnasium (>= 0) ruby' in the gems available on this machine.
运行rails console
或rails server
时出现同样的错误。为了解决问题,我运行gem install gemnasium
并收到以下错误:
ERROR: Could not find a valid gem 'gemnasium' (>= 0) in any repository
...这是有道理的,因为当我去rubygems.org,没有" Gemnasium"宝石。因此,我不知道为什么gem "gemnasium"
在Gemfile中开始使用或者它用于什么。
为了继续尝试继续讨论该问题,我只是在gem 'gemnasium'
中注释了Gemfile
。但是,当我尝试使用Capistrano部署到Staging到资产预编译部分时,这样做会导致以下问题:
INFO[ce9f38e3] Running bundle exec rake assets:precompile on http01-staging.my_app.com
DEBUG[ce9f38e3] Command: cd /u/apps/my_app/releases/20141126184705 && ( RAILS_ENV=staging bundle exec rake assets:precompile )
DEBUG[ce9f38e3] rake aborted!
DEBUG[ce9f38e3] LoadError: cannot load such file -- gemnasium
/u/apps/my_app/shared/bundle/ruby/1.9.1/gems/activesupport-3.2.21/lib/active_support/dependencies.rb:251:in `require'
/u/apps/my_app/shared/bundle/ruby/1.9.1/gems/activesupport-3.2.21/lib/active_support/dependencies.rb:251:in `block in require'
/u/apps/my_app/shared/bundle/ruby/1.9.1/gems/activesupport-3.2.21/lib/active_support/dependencies.rb:236:in `load_dependency'
/u/apps/my_app/shared/bundle/ruby/1.9.1/gems/activesupport-3.2.21/lib/active_support/dependencies.rb:251:in `require'
/u/apps/my_app/releases/20141126184705/lib/tasks/gemnasium.rake:2:in `block in <top (required)>'
/u/apps/my_app/releases/20141126184705/lib/tasks/gemnasium.rake:1:in `<top (required)>'
所以...基本上我不知道为什么Gemnasium会在这里开始或如何成功地将它恢复到我的Gemfile中。任何想法??
答案 0 :(得分:1)
看来您的gemonsium gem已弃用(并且未在rubygems.org中显示,您应该尝试直接从github上的源代码安装。
将以下行添加到Gemfile并运行bundle install
gem 'gemnasium', :git => 'git://github.com/gemnasium/gemnasium-gem.git'