641 Stimmen

Wie installiert man ein Gem oder aktualisiert RubyGems, wenn es mit einem Berechtigungsfehler fehlschlägt?

Ich versuche, einen Edelstein zu installieren, indem ich gem install mygem oder aktualisieren Sie RubyGems mit gem update --system und schlägt mit dieser Fehlermeldung fehl:

ERROR:  While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /Library/Ruby/Gems/2.0.0 directory.

Hat jemand eine Idee, wie man dieses Problem lösen kann?

-1voto

ERROR: Beim Ausführen von gem ... (Gem::FilePermissionError) Sie haben keine Schreibrechte für das Verzeichnis /Library/Ruby/Gems/2.6.0

[2022 Lösung] Die detaillierte Begründung für die Probleme wurde hinzugefügt ici

Zusammenfassung des Problems -> Das Problem bezog sich auf den Zugriff auf Ruby, da der M1 MAC sein eigenes Ruby mitbringt. Wir haben nicht die Erlaubnis, dieses für unsere Zwecke zu verwenden. Stattdessen installieren wir eine separate Instanz von Ruby und verwenden sie für unsere Zwecke.

Die folgenden Schritte haben mir geholfen, das Problem zu lösen, und ich hoffe, dass dies einigen helfen kann

Wir brauchen Ruby nicht mit rvn oder chruby zu installieren. Meine Lösung verwendet Homebrew, um Ruby zu installieren.

  1. Öffnen Sie das Terminal

  2. Ruby mit Homebrew installieren

(bei Neuinstallation) brew install ruby

[zur Neuinstallation] brew reinstall ruby

  1. Überprüfen Sie den Pfad von ruby mit dem folgenden Befehl

    which ruby

  2. Es sollte unter folgendem Pfad installiert werden

    /usr/bin/ruby

  3. So ändern Sie den Ruby-Pfad in den Benutzerpfad

So prüfen Sie, welche Shell Ihr System verwendet

echo $0

-zsh

Für zshrc

echo 'export PATH="/usr/local/opt/ruby/bin:$PATH"' >>~/.zshrc

Für bash

echo 'export PATH="/usr/local/opt/ruby/bin:$PATH"' >>~/~/.bashrc

  1. Beenden und starten Sie das Terminal neu

  2. Nach der Änderung des Pfads in Schritt 5

  3. Überprüfen Sie erneut den Pfad für Ruby (führen Sie Schritt 3 aus - stellen Sie sicher, dass der Pfad wie unten angegeben angezeigt wird)

/usr/local/opt/ruby/bin/ruby

(wenn Sie das Terminal nicht beenden und starten, wird der Pfad zu Schritt 4 angezeigt)

  1. Dieser Schritt ist möglicherweise nicht für jeden geeignet. Sie können die Schritte 10 und 11 überspringen, wenn Sie die richtige Cocoapods-Version installiert haben.

Überprüfen Sie die Version des installierten Pods

pod --version

  1. Deinstallieren Sie die bestimmte Version von Cocoapods mit dem folgenden Befehl

Falls die installierte Version 1.11.0 ist

gem uninstall cocoapods -v 1.11.0

  1. Installieren Sie die Cocoapods der jeweiligen Version

    gem install cocoapods -v 1.11.0

  2. Ändern Sie den Pfad zum Projektverzeichnis cd {Pfad des Projektverzeichnisses}

  3. Installieren Sie den Bundler in das Projektverzeichnis

bundle install

  1. Pod-Installation ausführen

pod install

-3voto

myklgee Punkte 11

Cd /Library/Ruby/Gems/2.0.0

öffnen.

Rechtsklick, um Informationen zu erhalten

Klickverschluss

Passwort setzen

alles zum Lesen und Schreiben bringen.

-4voto

Hardip Kalola Punkte 196

Die Installation von Gems oder die Aktualisierung von RubyGems schlägt mit einem Berechtigungsfehler fehl, dann geben Sie diesen Befehl ein

sudo gem install cocoapods

-5voto

Rama Astadipati Punkte 82

Dem Benutzer $whoami die Möglichkeit geben, in diesen Ordnern etwas zu erstellen

sudo chown -R user /Library/Ruby/Gems/2.0.0

-5voto

Alex_Burla Punkte 802

Sie können verwenden: gem install cocoapods --pre --user

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X