2011-09-01 156 views
0

這讓我發瘋。我改變了筆記本電腦,並試圖讓我的Rails環境再次工作。 Mac OS X有它自己的紅寶石,但我使用brew並安裝了新的。我安裝導軌3.0.5,跑:Bundler和Rails看着不同的寶石?

bundle install 

然後:

rails s 

我得到這個錯誤:

Could not find aws-s3-0.6.2 in any of the sources 
Run `bundle install` to install missing gems. 

抨擊我的頭靠在牆上了幾個小時後,我嘗試只是手動安裝寶石,它的工作!所以,顯然,rails和bundler正在爲我的寶石尋找不同的地方。兩者都來自我的釀造安裝。

我怎樣才能弄清楚每個人在看什麼,這樣我就可以再次使用「捆綁安裝」了?

回答

0

Rails和Bundle正在尋找它們捆綁在一起的寶石。

使用

bundle show 

命令來查看的Rails通過捆綁具有訪問的寶石。

你也可以檢查Gemfile.lock文件。

+0

也許我不明白。當我運行軟件包安裝並且它說安裝的所有東西在運行rails時都會失敗?爲什麼我必須手動獲取寶石? – ZaBlanc

0

gemfile主要來自rubygems.org,應該是rubyforge(當我在google上搜索該gem時出現的)。我認爲gem命令會檢查兩者。您可以指定其他來源,如自述文件中所述:http://gembundler.com/man/gemfile.5.html

+0

bundler沒有報告得到寶石的任何問題......? – ZaBlanc

+0

它是否說安裝了寶石?如果是這樣,您可能需要在捆綁軟件倉庫上提出問題。 – agmcleod

0

您是否使用pow? Pow一開始只有一個版本的ruby,但我沒有RVM當前設置的版本。

我還沒有試過,但this issue on Github提到了這個問題,並提到人們對Pow的疑難解答here。我已經粘貼了以下內容:

RVM

不正確的紅寶石或寶石正在使用

建立在你的項目根.rvmrc。見rvmrc docs

全系統RVM安裝

如果你有一個全系統的RVM安裝並收到錯誤LoadError: no such file to load -- bundler/setup,運行rvm info找出RVM安裝在你的機器上,那麼這樣做:

echo "export POW_RVM_PATH=/usr/local/rvm/scripts/rvm" >> ~/.powconfig 

其中/usr/local/rvm/是您的rvm安裝位置。

然後通過在活動監視器或終端中將其關閉來重新啓動POW。

+0

不運行POW和RVM(再)。 – ZaBlanc

+0

如果你沒有運行RVM,你需要做'sudo bundle install'。 – theTRON