我似乎对我使用的gem版本有问题。
我没有互联网访问权限,我直接从Rubyforge下载了宝石,然后将其转到目标机器,我使用gem install --force --local
进行安装。 Ruby / Rubygems来自大约一个月前拍摄的EPEL回购的快照。它托管在网络中的计算机上,并通过网络配置YUM以指向正确的位置。
我正在尝试使用Net :: SSH系列的宝石(Net:SSH,Net :: SSH :: Shell,Net :: SSH :: Multi,Net :: SSH :: Gateway,Net :: SCP) 。当我运行file.rb
时,我得到了这个:
/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的回答说:“我的朋友得到了,谢谢。”
这也是我第一次看到~>
运算符。通常我在这里见过>=
运算符。
有什么建议吗?
答案 0 :(得分:0)
~>
以允许使用其补丁版本大于或等于指定版本的gem,前提是主要版本和次要版本相同。例如:
~> 2.1.0
将允许版本2.1.9
,但不允许2.2.0
或2.0.0
。
~> 2.1.3
也允许2.1.9
但不允许2.1.0
或2.2.0
。
此外,您可以直接从RubyGems下载所需的确切版本。在您的情况下,链接将是http://rubygems.org/downloads/net-ssh-2.1.0.gem。