当我为Lion进行就地升级时,我的Macbook Pro上有几个带有黄瓜功能的rails应用程序。
所以现在我重新安装了XCode,更新了我的所有宝石,当我启动rails服务器时,一切似乎都很好。但如果我运行cucumber features
,我会得到以下内容:
You have already activated rack 1.3.2, but your Gemfile requires rack 1.2.3.
Consider using bundle exec. (Gem::LoadError)
所以我删除了Gemfile.lock以摆脱旧的gem列表,将Gemfile上的rails版本提升到新版本,然后再次运行bundle install
,这样做了。没有错误,但黄瓜的功能不会在我的生命中运行。
答案 0 :(得分:1)
您的环境很好,如果您想执行gem二进制文件,您总是应该用户捆绑exec,在这种情况下,它将始终启动Gemfile中声明的版本的可执行文件,在其他情况下没有bundle exec它将从在您的系统中安装的版本,有时它们可以匹配(但这只是巧合)。
在您的个人资料中添加类似内容以避免长时间的命令调用:
alias bec='bundle exec cucumber -r features'