无法在Windows 8.1中的vagrant中安装插件hostmanager

时间:2014-09-29 14:21:28

标签: plugins vagrant

无法安装插件,显示以下错误...

C:\ devbox> vagrant plugin install' vagrant-hostmanager' 安装插件的目录(Vagrant主目录) 里面有个空间。在Windows上,编译时Ruby中存在一个错误 插入带空格的目录。请将您的Vagrant搬回家 目录到没有空格的路径,然后再试一次。

2 个答案:

答案 0 :(得分:17)

Ruby(Vagrant使用的语言)有"问题"目录名称包含空格。

Vagrant将使用一个环境变量(由windows提供)来告诉它你的用户目录在哪里(因此它可以决定把你的" home"目录放在哪里)。 但是你的用户名可能有空格(我这样做)会导致ruby出现问题(正在做安装插件的工作)。

解决方案是将项目移动到您选择的项目目录中,目录名称中没有任何空格。然后,使用名为VAGRANT_HOME的环境变量并将其设置为指定目录。插件安装过程将检查此变量是否存在,如果存在,则使用它而不是在Windows当前用户目录中找到主目录。

我在home中创建了一个名为C:\Hashicorp\Vagrant的文件夹并使用了该文件夹(C:\Hashicorp\Vagrant\home)。

设置windows环境变量并不难(实际上相当简单) - 你可以在这里找到:http://www.computerhope.com/issues/ch000549.htm

您必须重新启动系统才能使其生效(重启后我的所有工作都有效)。

答案 1 :(得分:15)

我发现@Reinsbrains答案略有不同。为了在其名称中有一个没有空格的主目录。我创建了一个到我的用户/主目录的联结。在我的情况下,我决定采用Linux风格的结构,但任何位置都可以。在管理员命令提示符中:

mkdir c:\home
mklink /j c:\home\maarten "c:\users\Maarten Bicknese"

接下来将VAGRANT_HOME环境变量设置为新创建的联结。

setx VAGRANT_HOME c:\home\maarten

启动一个新的命令提示符,你很高兴!