我似乎遇到了我正在使用的gem版本的問題。 我沒有互聯網接入,我直接從Rubyforge下載了寶石,然後將它連接到目標機器上,我使用gem install --force --local
進行安裝。 Ruby/Rubygems來自大約一個月前採取的EPEL回購的快照。它位於網絡中的一臺機器上,YUM通過網絡配置以指向正確的位置。我試圖使用Net :: SSH系列的寶石(網絡:SSH,Net :: SSH :: Shell,Net :: SSH :: Multi,Net :: SSH :: Gateway,Net :: SCP) )。當我跑我的file.rb
我得到這個:寶石版本比Rubygems期望的更麻煩
/usr/lib/ruby/site_ruby/1.8/rubygems.rb:779:in `report_activate_error': RubyGem version error: net-ssh(2.6.6 not ~> 2.1.0) (Gem::LoadError)
from /usr/lib/ruby/site_ruby/1.8/rubygems.rb:214:in `activate'
from /usr/lib/ruby/site_ruby/1.8/rubygems.rb:249:in `activate'
from /usr/lib/ruby/site_ruby/1.8/rubygems.rb:248:in `each'
from /usr/lib/ruby/site_ruby/1.8/rubygems.rb:248:in `activate'
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:35:in `require'
from ./cluster_config.rb:12
我已經看到了很多的問題,在互聯網有關的實際版本是小於比預期的版本,但我只在例如發現那裏的實際版本是比預期的要新,但是在OP的回覆中「解決了」,並說「我的朋友知道了,謝謝。」
這也是我第一次見到~>
運營商在這種使用。通常我在這裏看到了>=
運營商。
有什麼建議嗎?
嗯,我似乎很傻,我不得不降級我使用的gem版本,只是爲了讓rubygems接受它。它是否要求更舊的版本,因爲新版本沒有足夠的審查? – 2013-03-27 21:13:53
版本'2.2'中可能存在應用程序不兼容或未經過測試的更改。由於應用程序已經過測試,可以使用版本'2.1',開發人員選擇使用該版本。另外,系統中可以存在多個版本的gem,只要它們不是同時加載的。 – 2013-03-27 21:15:12
我安裝了舊的Gem,它抱怨說它不是2.5.0或更高版本。一點點挖掘和Net :: SSH :: Gateway/Multi和Net :: SCP需要> = 2.5.0和Net :: SSH:Shell需要〜> 2.1.0。看起來我不能使用Net :: SSH:Shell與其他三個,所以我需要解決使用它。感謝您的建議! – 2013-03-27 21:22:36