2012-06-18 60 views
0

我想從GitHub安裝documentcloud,並且遇到許多安裝問題。我通過安裝了,但我現在越來越:從github安裝documentcloud時出現GemLoadError

/usr/local/lib/site_ruby/1.8/rubygems/specification.rb:1637:in`raise_if_conflicts':無法激活ActionPack的-2.3.14,因爲機架1.4.1衝突與機架(〜> 1.1.0)(寶石:: LoadError)

我的寶石列表是:

*** LOCAL GEMS *** 

actionmailer (2.3.14) 
actionpack (2.3.14) 
activerecord (2.3.14) 
activeresource (2.3.14) 
activesupport (2.3.14) 
bcrypt-ruby (3.0.1) 
builder (3.0.0) 
calais (0.0.13) 
cloud-crowd (0.6.2) 
curb (0.8.0) 
daemon_controller (1.0.0) 
daemons (1.1.8) 
docsplit (0.6.3) 
eventmachine (0.12.10) 
fastthread (1.0.7) 
hpricot (0.8.6) 
jammit (0.6.5) 
json (1.7.3) 
libxml-ruby (2.3.2) 
mime-types (1.18) 
nokogiri (1.5.4) 
open4 (1.3.0) 
passenger (3.0.13) 
pg (0.13.2) 
Platform (0.4.0) 
POpen4 (0.1.4) 
pr_geohash (1.0.0) 
rack (1.4.1, 1.1.3) 
rack-protection (1.2.0) 
rails (2.3.14) 
rake (0.9.2.2) 
rdiscount (1.6.8) 
rest-client (1.6.7) 
right_aws (3.0.4) 
right_http_connection (1.3.0) 
rsolr (1.0.8) 
rubygems-update (1.3.5) 
rubyzip (0.9.9) 
sanitize (2.0.3) 
sinatra (1.3.2, 0.9.6) 
sqlite3 (1.3.6) 
sqlite3-ruby (1.3.3) 
sunspot (1.3.3) 
sunspot_rails (1.3.3) 
thin (1.3.1) 
tilt (1.3.3) 
yui-compressor (0.9.6) 

我使用Ruby 1.8.7-P249 & Rails 2.3.14。

我儘可能地遵循了文檔。我也做了很多次(我知道瘋狂的定義是一遍又一遍地做同樣的事情,並期望得到不同的結果:))。

其他人碰到過嗎?

+0

嘗試卸載其中一個機架寶石,然後嘗試安裝文檔雲,寶石卸載機架-v = 1.1.0 – Raghu

回答

0

你有比Rails 2.3允許的Rack(特別是ActionPack,它是Rails的一部分)的更新版本。你要麼必須

  • 更新的Rails(或者一個補丁包,可能是猴子補丁吧)

  • 修改該應用使用Bundler

  • 卸載機架的較新版本:

    gem uninstall rack -v 1.4.1 
    

最後一個選項是最簡單的,d不需要修改應用程序,但它會阻止您安裝較新版本的Rack。如果您使用的是RVM,則可以使用gemset與其他應用程序解決此問題。

+0

下面是我在嘗試卸載時所得到的結果:您已請求卸載gem: rack-1.4。 1 passenger-3.0.13取決於[rack(> = 0)] rack-protection-1.2.0取決於[rack(> = 0)] sinatra-1.3.2取決於[rack(> = 1.3。 6,〜> 1.3)] sinatra-0.9.6取決於[rack(> = 0.9.1)] thin-1.3.1取決於[rack(> = 1.0.0)] 如果刪除這個寶石,一個或多個依賴不會被滿足。 – TheVman

+0

@TheVman是的,正如我在我的答案中指出的,這可能會導致依賴於較新版本的其他應用程序出現問題,並且您必須調整documentcloud才能使用Bundler,將其Rails版本更新爲3.x,或者使用RVM併爲documentcloud使用不同的gemset,因此您可以在其他應用程序的其他gemsets中安裝較新版本的Rack。 (這是依賴地獄,順便說一句,這就是爲什麼像Bundler這樣的工具創建。) –