【问题标题】:Ruby gem already activatedRuby gem 已激活
【发布时间】:2011-01-06 03:51:37
【问题描述】:

如何停用较新版本的 Cucumber,或使其与较早版本一起使用?

user$ rake features
(in /Users/user/Project)
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby -I    "/Library/Ruby/Gems/1.8/gems/cucumber-0.6.1/lib:lib" "/Library/Ruby/Gems/1.8/gems/cucumber-   0.6.1/bin/cucumber" --format pretty
can't activate cucumber (= 0.4.4, runtime) for [], already activated cucumber-0.6.1 for [] (Gem::LoadError)
/Library/Ruby/Site/1.8/rubygems.rb:280:in `activate'

【问题讨论】:

  • 结果如何?我也遇到了同样的问题

标签: ruby cucumber bundler


【解决方案1】:

一个不错的长期解决方案是使用 rvm 和 gemsets。 一旦你安装了 rvm,这篇文章确实非常方便。

http://www.stjhimy.com/posts/4

【讨论】:

    【解决方案2】:

    您可以使用一些简单的调整,以便多个版本的 Cucumber 相互配合:

    http://gem-session.com/2010/04/how-to-use-multiple-versions-of-cucumber-in-parallel

    【讨论】:

      【解决方案3】:

      我会尝试完全删除 0.6.1,看看它是否会在仅安装 0.4.4 的情况下运行。

      如果没有,您需要跟踪需要 0.4.4 的内容并将其更改为 >= 并查看是否有效。

      【讨论】:

      • 我试过了,它给了我这个:没有要加载的文件 -- cucumber/rails/world (MissingSourceFile) /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in gem_original_require' /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in polyglot_original_require' /Library/Ruby/Gems/1.8/gems/polyglot-0.2.9/lib/polyglot.rb:70:in require' /Library/Ruby/Gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:158:in require' /Users/ericsorenson/RubyOnRails/qwantime/features/support/env .rb:4 /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require' ...
      • 在删除并重新安装 gems 似乎几天后,您的建议是准确的。希望 Gem Bundler 将来能在这类事情上有所帮助?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-12
      • 2018-06-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多