Vagrant kann kein Plugin installieren: Gem-Abhängigkeit schlägt trotz Installation fehl

6800
msanford

Ich versuche, das Vagrant-Vbguest- Plugin unter cygwin 64 in Windows 7 zu installieren .

$ vagrant plugin install vagrant-vbguest Installing the 'vagrant-vbguest' plugin. This can take a few minutes... Bundler, the underlying system Vagrant uses to install plugins, reported an error. The error is shown below. These errors are usually caused by misconfigured plugin installations or transient network issues. The error from Bundler is:  An error occurred while installing json (1.8.1), and Bundler cannot continue. Make sure that `gem install json -v '1.8.1'` succeeds before bundling. 

Das Durchführen der vorgeschlagenen Schritte führt zu folgenden Ergebnissen:

$ gem install json -v '1.8.1' Building native extensions. This could take a while... Successfully installed json-1.8.1 1 gem installed Installing ri documentation for json-1.8.1... Installing RDoc documentation for json-1.8.1... 

Das Ausführen des ersten Befehls schlägt auf dieselbe Weise fehl.

5

3 Antworten auf die Frage

6
evanjd

Dies kann auftreten, wenn Sie Vagrant in einem Ordner installieren, der Leerzeichen enthält. Zum Beispiel C:\Program Files\HashiCorp\Vagrantanstelle der Standardeinstellung C:\HashiCorp\Vagrant.

Ihnen stehen zwei Lösungen zur Verfügung:

  • Installieren Sie Vagrant in einem Ordner ohne Leerzeichen (z. B. den Standardinstallationsordner).
  • Ändern Sie Ihre PATH-Umgebungsvariable, um die Kurznamen der alten Ordner anstelle von Ordnern mit Leerzeichen zu verwenden. Zum Beispiel Program Fileswird PROGRA~1und Program Files (x86)wird PROGRA~2(in den meisten Fällen sollten Sie dies selbst überprüfen, indem Sie diese Pfade in die beiden Kurznamen eingeben, die den von mir angegebenen Ordnern entsprechen).

Um Ihre Umgebungsvariablen zu ändern, gehen Sie zu Systemsteuerung, System, Erweiterte Systemeinstellungen, klicken Sie auf die Registerkarte Erweitert und dann auf die Schaltfläche Umgebungsvariablen unten im Fenster. Wählen Sie im Rahmen Systemvariablen die Pfadvariable aus und klicken Sie auf Bearbeiten. Ändern Sie von dort aus den Pfad Ihrer Vagrant-Ablage, um anstelle von Ordnern mit Leerzeichen Kurznamen zu verwenden. Seit ich Vagrant in Program Files (x86)Directory installiert habe, sieht meine Path-Variable in etwa so aus:

[semi-colon delimited list of other paths];C:\PROGRA~2\HashiCorp\Vagrant\bin 

Wenn Sie dies getan haben, öffnen Sie eine neue Eingabeaufforderung und versuchen Sie die Plugin-Installation erneut.

2
An Do Tran

Sie können das Plugin lokal installieren.

  • Laden Sie das Plugin-Gem von https://rubygems.org/ herunter und speichern Sie es irgendwo ( C:\somewhere).
  • Führen Sie am Plugin-Speicherort den folgenden Befehl aus:

    C:\somewhere>vagrant plugin install vagrant-vbguest-0.10.0.gem 
Dies ist die einfachste Lösung unter Windows. Klacks :-) Vacilando vor 8 Jahren 0
Warum ist das nicht dokumentiert? Ich habe zwei Tage damit verbracht. Ich mache sofort eine PR! renoirb vor 8 Jahren 0
1
m1keil

Vagrant wird mit einem eigenen eingebetteten Rubin geliefert und verwendet kein Systemrubin. Sie müssen gem mit dem eingebetteten gem-Dienstprogramm installieren und neu installieren.

Zum Beispiel auf meinem OS X:

~ -> /Applications/Vagrant/embedded/bin/gem list  *** LOCAL GEMS ***  bigdecimal (1.2.0) io-console (0.4.2) json (1.7.7) minitest (4.3.2) psych (2.0.0) rake (0.9.6) rdoc (4.0.0) test-unit (2.0.0.0) 

Suchen Sie nach Vagrant's gemund versuchen Sie, install erneut auszuführen.