您已经激活launchy 0.3.7,但是您的Gemfile需要launchy 0.4.0
在我知道最近一直工作的rails项目上,周五我突然收到这条消息,当我尝试执行任何rake任务时:这是奇您已经激活launchy 0.3.7,但是您的Gemfile需要launchy 0.4.0
You have already activated launchy 0.3.7, but your Gemfile requires launchy 0.4.0. Consider using bundle exec.
思考我检查了我的Gemfile,我不要求任何地方launchy(虽然它在我的Gemfile.lock的出现)。
当运行包秀launchy是通知我,我现在用:
Ruby192/lib/ruby/gems/1.9.1/gems/launchy-0.4.0
我试图运行包更新耙,重新运行安装包,并同时使用耙分贝:创建和捆绑EXEC耙db:创建。什么改变了?
看起来像你没有使用RVM。我强烈建议安装它。
假设你有一个RVM和,例如,安装了Ruby 1.9.2-P180,我会做到以下几点:
-
创建MY_PROJECT宝石:
rvm gemset create my_project
-
在项目文件夹内创建一个
.rvmrc
文件,其中包含以下行:rvm use [email protected]_project
- 运行
cd .
里面的项目目录并接受所有的提示; -
安装
bundler
宝石:gem install bundler
- 运行项目的根目录里面
bundle
命令。
这应该做的伎俩。在我的示例中,我坚持使用RVM,因为它会将所有项目宝石与系统宝石隔离开来。运行bundle
命令后,Bundler将为您管理依赖关系,因此显然不需要在Gemfile中明确指定launchy
gem。
我相信launchy被水豚或黄瓜使用。除了做一个gem uninstall launchy
并重新安装你的包,我会建议明确地将它添加到你的Gemfile中以避免这个问题,因为这里有一些奇怪的事情发生。例如:
group :test do
gem 'launcy', '=0.4.0'
end
在你的Gemfile,指定你需要launchy的确切版本和运行bundle
你已经安装在系统上open_gem
?它被自动加载rubygems
,并要求launchy,导致与捆绑商讨厌的交互。尝试删除它。
sudo gem uninstall open_gem
有关详细信息,请参见this blog post。
brutal解决方案 - > delite gemfile.lock和bundle install – 2011-06-03 18:04:16