如何在不同版本的gem之间切换?

ste*_*ang 13 ruby gem rack cucumber

我在本地机器上安装了三个版本的机架(rack (1.4.1, 1.3.6, 1.3.5)).对于某些宝石(例如Cucumber),它需要更低版本的rack激活?

我试过bundle但没有好处.

执行时,cucumber仍然会使用带有1.4.1系统版本的激活机架.Bundle指定应安装哪个gem但不确保激活哪个gem.

我怎么能激活某些版本的rack

meg*_*gas 12

您可以在项目的gemfile中指定版本

gem "rack",  "1.3.5"
Run Code Online (Sandbox Code Playgroud)

指出matt:

要使用Gemfile中指定的gem:

bundle exec cucumber
Run Code Online (Sandbox Code Playgroud)

  • 但是,执行时,`cucumber`仍将使用系统版本为"1.4.1"的激活机架.`Bundle指定**应该安装哪个宝石**但不能确保**将激活哪个宝石**. (2认同)
  • @ steven.yang您可以使用[`bundle exec`](http://gembundler.com/man/bundle-exec.1.html)使用`Gemfile`中指定的gem版本执行命令.例如`捆绑exec黄瓜`. (2认同)