Vagrant插件安装失败

3

我正在尝试安装vagrant-hostmanager插件,但是安装一直失败。以下是错误信息:

Applications/Vagrant/embedded/gems/gems/vagrant-1.3.5/plugins/commands/plugin/state_file.rb:47:in `save!': undefined method `sort!' for {}:Hash (NoMethodError)

还有其他人遇到过这个问题吗?


升级Vagrant到1.4版本应该可以解决这个问题。 - mechanicalfish
1
是的,那个方法上周已经被删除了。https://github.com/mitchellh/vagrant/commit/39b2539ec7821aa952ca36fbda4c68e35c8a2d41 - jstim
啊,我需要1.3.x版本来运行genesis-wordpress,有什么办法可以解决吗? - Connor Black
我在安装vagrant-berkshelf插件时遇到了同样的问题 - @misha的答案也为我解决了这个问题。 - Jon Burgess
也对我有用。Vagrant 应该仍然修复卸载脚本。 - Tony
2个回答

9
我运行了vagrant 1.3.5安装程序自带的卸载脚本,但是仍然遇到了同样的错误。然后我删除了隐藏的$HOME/.vagrant.d目录,问题就解决了。
对于我来说,在RHEL(和变种)上配置网络时,1.4.0版本存在一个致命错误,所以我不得不将我的开发工作站降级到1.3.5版本(直到Vagrant 1.4.1发布修复为止):https://github.com/mitchellh/vagrant/issues/2614

!! 这将删除所有框和插件。 - Tom Maeckelberghe

0

或者您可以更具选择性地找出问题所在:

~/.vagrant.d 06:08:58 516$ grep -R state_file gems/ gems//gems/bindler-0.1.3/lib/bindler/bend_vagrant.rb:require Vagrant.source_root.join('plugins/commands/plugin/state_file').to_s

所以在我的情况下是 "bindler"。

~/.vagrant.d 06:11:43 519$ vagrant plugin uninstall bindler Uninstalling the 'bindler' plugin... ~/.vagrant.d 06:12:39 520$ grep -R state_file gems/

全部完成!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接