2011-06-03 71 views
1

在我知道最近一直工作的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:創建。什麼改變了?

+0

brutal解決方案 - > delite gemfile.lock和bundle install – 2011-06-03 18:04:16

回答

1

看起來像你沒有使用RVM。我強烈建議安裝它。

假設你有一個RVM和,例如,安裝了Ruby 1.9.2-P180,我會做到以下幾點:

  1. 創建MY_PROJECT寶石:

    rvm gemset create my_project

  2. 在項目文件夾內創建一個.rvmrc文件,其中包含以下行:

    rvm use [email protected]_project

  3. 運行cd .裏面的項目目錄並接受所有的提示;
  4. 安裝bundler寶石:

    gem install bundler

  5. 運行項目的根目錄裏面bundle命令。

這應該做的伎倆。在我的示例中,我堅持使用RVM,因爲它會將所有項目寶石與系統寶石隔離開來。運行bundle命令後,Bundler將爲您管理依賴關係,因此顯然不需要在Gemfile中明確指定launchy gem。

0

我相信launchy被水豚或黃瓜使用。除了做一個gem uninstall launchy並重新安裝你的包,我會建議明確地將它添加到你的Gemfile中以避免這個問題,因爲這裏有一些奇怪的事情發生。例如:

group :test do 
    gem 'launcy', '=0.4.0' 
end 
0

在你的Gemfile,指定你需要launchy的確切版本和運行bundle

0

你已經安裝在系統上open_gem?它被自動加載rubygems,並要求launchy,導致與捆綁商討厭的交互。嘗試刪除它。

sudo gem uninstall open_gem 

有關詳細信息,請參見this blog post

相關問題