使用vagrant时Ruby gem依赖错误

时间:2015-03-31 14:47:11

标签: ruby dependencies vagrant chef

今天我想用流浪汉和厨师启动我的虚拟Ubuntu 14.04服务器。就像每个好的开发者故事一样,它在前一天工作得很好,所以我的假设是它会再一次。然而,这不是现实对我的影响。

==> default: stdin: is not a tty
==> default: ERROR:  While executing gem ... (Gem::DependencyError)
==> default:     Unable to resolve dependencies: ohai requires mime-types (~> 2.0); rest-client requires mime-types (~> 1.16)

之前没有这样做,我感到困惑的是它可能是什么。我检查了VM的互联网连接,这听起来很响。

99.999%的Vagrant和Chef脚本是由其他人制作的,我必须承认我对Chef的知识,特别是Ruby的知识有限。我没有更改脚本中的任何内容。 DID发生的唯一事情是我的机器在一夜之间吞噬了这么多内存,因此无法继续工作。所以我不得不重置机器。

1 个答案:

答案 0 :(得分:1)

我用厨师10.28.0解决了这个问题。问题是厨师要求这些依赖:

ohai >= 0.6.0
rest-client < 1.7.0, >= 1.0.4

因此,宝石使用它可以找到的最新版本的ohai,它最终成为新的,并打破了一切。

您可以通过删除ohai,然后安装旧版本来修复它,如下所示:

gem install ohai -v 7.2.0

然后它应该工作!

如果你再次遇到类似的事情,rubygems.org是一个了解事情要求依赖的好地方。