448 Stimmen

rbenv ändert nicht die Ruby-Version

Ich installierte rbenv gemäß der Github-Anleitung. Ich bin OSX ausgeführt, aber ich habe versucht, diese auf einem Ubuntu 12.04 VM und erhielt die gleichen Ergebnisse. Das Folgende ist, was ich in meinem Terminal erhalte, wenn ich versuche, Ruby-Versionen zu ändern:

rbenv versions
* 1.9.3-p0 (set by /Users/user/.rbenv/version)
1.9.3-p125

rbenv global
1.9.3-p0

rbenv rehash

ruby -v
ruby 1.8.7 (2011-12-28 patchlevel 357) [universal-darwin11.0]

which ruby
/usr/bin/ruby

Hat irgendjemand eine Idee, warum rbenv die Ruby-Version nicht umschaltet, wie es glaubt, dass es ist? Es gibt auch keine .rbenv-Datei im lokalen Verzeichnis, die dazu führen würde, dass die Ruby-Version standardmäßig auf 1.8.7 gesetzt wird.

rbenv local
rbenv: no local version configured for this directory

8voto

djb Punkte 5029

Ich hatte das gleiche Problem, aber verursacht durch Homebrew:

[~]$ rbenv version
2.3.0 (set by /Users/user/.rbenv/version)
[~]$ ruby -v
ruby 2.3.3p222 (2016-11-21 revision 56859) [x86_64-darwin16]
[~]$ which ruby
/usr/local/bin/ruby

Irgendwie hatte ich Ruby auch über Homebrew installiert, und der Homebrew-Pfad lag vor dem rbenv-Pfad in meinem $PATH . Laufen brew uninstall ruby hat es für mich erledigt.

7voto

htmldrum Punkte 2371

rbenv help shell

"Setzt eine Shell-spezifische Ruby-Version durch Setzen der Umgebungsvariablen 'RBENV_VERSION' in Ihrer Shell. Diese Version hat Vorrang vor lokalen anwendungsspezifischen Versionen und der globalen Version. sollte eine Zeichenkette sein, die einer Ruby-Version entspricht, die rbenv bekannt ist. Führen Sie rbenv versions' aus, um eine Liste der verfügbaren Ruby-Versionen zu erhalten."

Vorausgesetzt, rbenv wurde korrekt installiert, entspricht ruby -v

rbenv shell 1.9.3-p125

6voto

AmitF Punkte 1127

Laufen:

rbenv init

Nachdem ich das ausgeführt habe, habe ich meine lokale rbenv-Version eingestellt:

rbenv local 2.4.0

dann meine ruby -v und mein rbenv local Versionen übereinstimmten.

Hinweis: Möglicherweise möchten Sie auch das Verzeichnis, in dem Sie sich befinden, verlassen und dann wieder zurückgehen, ich habe festgestellt, dass das für mich notwendig war, damit die Dinge funktionieren.

5voto

Basil Mariano Punkte 2227

Für Benutzer von Fischmuscheln

set --universal fish_user_paths $fish_user_paths ~/.rbenv/shims/

5voto

Duy lê khánh Punkte 31

Hinzufügung des Folgenden zu .bashrc funktioniert bei mir -

export PATH="$HOME/.rbenv/shims:$PATH"

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