Ich habe RVM zusammen mit Ruby-Versionen installiert. Wenn ich jedoch die Konsole hochfalle und den Command-Rails-Server, die Bundle-Installation usw. ausführe, bekomme ich diesen Fehler
%Vor% Aber wenn ich rvm use 1.9.2
zuerst starte, ist alles in Ordnung. Ich habe versucht, 'rvm verwenden - Standard 1.9.2', aber nichts geändert. Bedeutet das, dass es einen anderen Rubin verwendet als die in RVM? Vielen Dank im Voraus!
Erläuterung der rubygems Bin-Ordner und PATH
Oh. Sie hatten keine Rails in Ihrem Rvm Ruby installiert, aber Sie haben in Ihrem System Ruby.
Einzelne Edelsteine, wie rails
, können ein bin
-Verzeichnis haben, das ausführbare Hilfsskripte enthält. Ihr Systemstandard-Rubygems erstellt Symlinks von Ihrem System / usr / bin / dir in den Ordner bin
des Gems für diese ausführbaren Helper.
RVM bietet eine ähnliche Funktion, außer dass das Verzeichnis / usr / bin dir nicht verschmutzt wird, sondern einfach sein ~/.rvm/gems/#{rvm_gemset_string}/bin
-Ordner an die PATH-Umgebungsvariable angehängt wird.
Rubygems-System in die Rub-Gem-Verzeichnisse Ihres neuen Rubins importieren
RVM importiert deine Edelsteine standardmäßig nicht von deiner System Ruby Installation in deine rvm ruby Installationen. Es macht eine vollständige saubere Gabel des gesamten Ruby-Systems einschließlich Rubygems (der Edelstein "Rubygems") und Rubygems "Gem Liste. Wenn du rvm install 1.9.2
hast, hast du eine komplett neue Installation von allem, was mit Ruby verwendet wird, gemacht.
Wenn Sie alle Ihre System-Ruby-Edelsteine, die Sie zuvor verwendet haben, in Ihren bevorzugten rvm-Ruby erhalten möchten, versuchen Sie Folgendes:
%Vor%Ursprüngliche Antwort / Änderungen von @Telemachus
Versuchen Sie, die Zeilen, die rvm liefern, an das Ende Ihrer ~/.bash_profile
oder ~/.bashrc
zu verschieben (je nachdem, wo Sie sie haben):
.
%Vor% Sie haben Schienen in /usr/bin
installiert, was wahrscheinlich vor dem rvm ruby bin-Pfad in Ihrer bash echo $PATH
-Variable liegt. Daher werden die Systemschienen installiert (/ usr / bin / rails, ein Ruby-Skript), die gestartet werden so:
#! /usr/bin/ruby18
Sie müssen dafür sorgen, dass der Konflikt aufhört. Die beste aller Möglichkeiten besteht darin, sicherzustellen, dass RVMs bin dir am Anfang Ihres PATH steht. Dies geschieht im Skript #Load rvm environment
, das Sie bei der Installation von rvm zu Ihrem ~/.bash_profile
hinzugefügt haben. Wenn Sie rvm als Systembibliothek und nicht nur für Ihren Benutzer installiert haben, ist das anders.
Wenn Sie zu diesem Fall kommen, fragen Sie @Telemachus.
Sie müssen dann sicherstellen, dass Sie das Rails-Juwel wie oben in Ihrem neuen rvm-Ruby installiert haben.
Akzeptanztest:
Sie werden feststellen, dass, wenn Sie rvm use 1.9.2
erledigt haben, which ruby
etwas wie ~/.rvm/rubies/1.9.2/bin/ruby
zurückgibt, und which rails
sollte etwas wie ~/.rvm/gems/*/bin/rails
zurückgeben.
Ich habe gerade das gleiche Problem auf Windows Vista gelöst.
Meine Konsole gab mir diese Nachricht:
%Vor%Ich habe gerade die erste Zeile dieser Datei bearbeitet:
%Vor%Und es hat auf den richtigen Ort für ruby.exe auf meinem System hingewiesen:
%Vor%Et voilà, Problem gelöst!
Sie müssen rvm use --default 1.9.2
ausführen, nicht nur rvm use --default
.
Tags und Links ruby ruby-on-rails rubygems rvm apt-get