Ich führe den Befehl
aus %Vor%in einem Projektordner. In einigen Projektordnern wird ein Fehler erzeugt und in anderen Projektordnern wird kein Fehler erzeugt. Der Fehler ist:
Ihr Benutzerkonto darf nicht auf dem System RubyGems
installiert werden
Ich weiß, dass dies durch Befolgen des empfohlenen Hinweises behoben werden kann:
%Vor%
Meine Frage ist warum ist das Verhalten inkonsistent?
Wenn Sie RVM, rbenv oder chruby verwenden, um Ruby zu installieren, werden normalerweise alle Edelsteine in Ihrem Benutzerordner unter ~/.rbenv/ruby-version/...
Wenn Sie Ihr System Ruby (das standardmäßig installierte System) verwenden, werden die Edelsteine jedoch an einem Ort installiert, auf den Sie ohne sudo
keinen Zugriff haben.
Ich nehme an, dass Ihr Versionsmanager standardmäßig das Ruby-System des Systems verwendet, einige Ihrer Projekte jedoch eine .ruby-Version-Datei enthalten, in der er angewiesen wird, eine andere Ruby-Version zu verwenden, auf die Sie Zugriff haben.
In meinem Fall löste ich genau das, was die Fehlermeldung vorschlägt:
%Vor%Also statt:
%Vor%Ich lief:
%Vor%Das war die Lösung für dieser Typ .
Der Nachteil dieser Lösung besteht darin, dass ein Ordner vendor
im aktuellen Ordner erstellt wird, der zu .gitignore
hinzugefügt werden kann, wenn die Anwendung über Git verteilt werden soll.
In meinem Fall hatte ich ein existierendes $BUNDLE_PATH
ohne ausreichende Berechtigungen für den Bundler-Benutzer zum Schreiben.
Tags und Links ruby ruby-on-rails rubygems bundler gemfile