web-dev-qa-db-fra.com

Pourquoi "RVM --default" ne fonctionne pas pour moi sous MacOSX?

Après avoir utilisé Ruby and Rails pendant un certain temps maintenant, je voulais essayer RVM. Tout fonctionne bien, sauf pour une chose:

Dans un Terminal Ruby fraîchement ouvert, pointe sur le système Ruby, malgré le fait que j'ai utilisé la commande rvm --default.

user@terra ~ $ Ruby -v
Ruby 1.8.7 (2010-08-16 patchlevel 302) [i686-darwin10]
user@terra ~ $ which Ruby
/opt/local/bin/Ruby
user@terra ~ $ rvm list
   Ruby-1.8.7-p334 [ ]
=> Ruby-1.9.2-p180 [ ]

Tout va bien après que j'ai appelé rvm reload

user@terra ~ $ rvm reload
user@terra ~ $ Ruby -v
Ruby 1.9.2p180 (2011-02-18 revision 30909) [x86_64-darwin10.7.1]
tmangner@terra ~ $ which Ruby
/Users/user/.rvm/rubies/Ruby-1.9.2-p180/bin/Ruby

J'ai configuré mon .bash_profile comme décrit dans la documentation:

...
[[ -s "/Users/user/.rvm/scripts/rvm" ]] && source "/Users/user/.rvm/scripts/rvm" 

Merci de votre aide. C'est très apprécié.

J'utilise Mac OS X Snow Leopard (10.6.6)

Mettre à jour:

Ce --default ne semble pas fonctionner pour moi ...

user@terra ~ $ rvm use 1.9.2 --default
Using /Users/user/.rvm/gems/Ruby-1.9.2-p180
user@terra ~ $ rvm default
user@terra ~ $
29
DiegoFrings

J'ai eu le même problème une fois. En fait, le script rvm a été chargé deux fois, ce qui a un peu modifié les choses. 

Vérifiez tous les fichiers chargés lors de l'ouverture d'un shell, par exemple. /etc/profile, ~/.bashrc, ~/.bash_profile et ainsi de suite, et assurez-vous qu'ils ne chargent pas RVM deux fois. 

Peut-être mettre echo "Going to load RVM" avant [[ -s "/Users/user/.rvm/scripts/rvm" ]] && source "/Users/user/.rvm/scripts/rvm" dans votre ~/.bash_profile pour voir si cela se produit ou non

43
PerfectlyNormal

Déplacer ceci: 

[[ -s "/usr/local/rvm/scripts/rvm" ]] && . "/usr/local/rvm/scripts/rvm"

dans le bas de ~/.bash_profile a résolu le problème pour moi.

16
kennyadsl

Un correctif possible pour les utilisateurs de ZSH:

D'une certaine manière j'avais:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"

dans .zprofile et .zshrc.

Supprimer la ligne de .zprofile a résolu le problème. (Bien que vous devriez pouvoir supprimer l'un ou l'autre, à condition qu'il n'apparaisse qu'une seule fois)

7
nat

J'ai eu le même problème. Déplacer la ligne: [[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function

après la ligne de MacPorts: export PATH=/opt/local/bin:/opt/local/sbin:$PATH

résolu le problème pour moi.

6
Misterloac

avez-vous exécuté la commande rvm utilise --default 1.9.2?

Cela a fonctionné pour moi sur openSUSE, je ne connais pas encore Snow Leopard.

6
Gwilym Kuiper

Au lieu de:

rvm use 1.9.2 --default 

J'ai utilisé la version complète:

rvm use Ruby-1.9.2-p290 --default 

Cela a fonctionné pour moi en zsh.

5
Laurens

J'ai eu le même problème et depuis que j'utilise Oh-My-Zsh , il était un peu plus difficile de suivre si j'ai des appels en double vers RVM. 

Je l'ai corrigé en déplaçant l'appel vers RVM à partir du fichier séparé rvm.zsh situé dans mon dossier\custom dans\oh-my-zsh jusqu'à la toute fin de mon fichier principal .zshrc.

Il semble que RVM soit vraiment sensible aux appels non à la fin de la séquence d'initialisation de zsh. 

5
Alex Koloskov

vérification de l'intégrité - assurez-vous que le projet sur lequel vous travaillez a la même version de Ruby que celle que vous essayez de définir par défaut dans le fichier .Ruby-version.

cela m'est arrivé et je ne pouvais pas comprendre pourquoi rvm n'utilise pas mon défaut 

4
ilan weissberg

J'ai eu le même problème sur Mac OS X 10.7.

Et plus tard, j'ai découvert que mon compte n'avait pas été ajouté au groupe "rvm".

Une fois que je me suis ajouté au groupe rvm, je peux définir --default of rvm.

2
Dennis C

Mon problème a été résolu en changeant: 

PATH=/usr/local/bin à PATH=$PATH:/usr/local/bin dans mon .zshrc

source @github RVM file d'attente

Évidemment, vous devez vous assurer que RVM est d’abord correctement installé, puis lancez la vérification type rvm | head -1 que @choise vous a suggérée. rvm use --default 1.9.3-p362 fonctionne maintenant correctement. 

1
Nick Tomlin

J'ai dû supprimer la ligne [[ -s "/usr/local/rvm/scripts/rvm" ]] && . "/usr/local/rvm/scripts/rvm" de ~/.bash_profile et la déplacer au bas de ~/.bashrc.

Cela corrigeait le problème sous OS X 10.10.1.

0
Josh

Essayez ceci pour définir Ruby par défaut pour le nouveau Shell:

Sudo rvm alias create default 1.9.2
0
Hank

Pour une raison quelconque, j'avais dans mon répertoire $ HOME/bin Ruby, Gem, Rake, ... des fichiers de remplacement. Un exemple ci-dessous. Par conséquent, mon utilisation de RVM --default 1.9.3 ne fonctionnait pas comme prévu. Supprimer le répertoire $ HOME/bin a résolu le problème.

cat  bin/Ruby 
#!/usr/bin/env bash

if [[ -s "/usr/local/rvm/environments/Ruby-1.9.2-p290" ]]
then
  source "/usr/local/rvm/environments/Ruby-1.9.2-p290"
  exec Ruby "$@"
else
  echo "ERROR: Missing RVM environment file: '/usr/local/rvm/environments/Ruby-1.9.2-p290'" >&2
  exit 1
fi
0
Greg Dan

J'ai suivi les suggestions ci-dessus - vérifié mon bash_profile (ce qui était bien) et également remarqué que, dans Ubuntu, vous devrez peut-être prendre en compte les conseils de https://rvm.io/support/faq/#Shell_login

Cependant, j'avais toujours ce problème jusqu'à ce que je réalise que le projet que j'essayais d'exécuter contenait un fichier .rvmrc spécifiant une version de Ruby que je n'avais pas installée. Quand j'ai corrigé ceci - j'ai cessé d'avoir le problème (donc ce n'est pas que l'utilisation par défaut ne fonctionnait pas, mais que ce projet l'ignorait)

0
TimM

Vous devez mettre le chemin à parcourir devant votre PATH

$ export PATH=/path/to/rvm-dir:$PATH
0
Heiko Rupp

qu'est-ce que type rvm | head -1 imprime?

dans mon bash_profile (sur le dernier osx) je devais mettre

# Ruby Version Manager
[[ -s "/usr/local/rvm/scripts/rvm" ]] && . "/usr/local/rvm/scripts/rvm"

j'ai également créé un gemset et réglé ceci par défaut:

rvm reload
rvm install 1.9.2
rvm --create use 1.9.2@default
rvm --default use 1.9.2@default
0
choise

même pb ici. la ligne était là deux fois et il l'a cassée ... pour une raison quelconque ... supprimer la ligne superflue l'a résolu

0
nicolas

JewelryBox pour la première fois sur Mac OS et dans la section Préférences, vous trouverez 

"show default Ruby in system menu bar"

en cochant cette case, vous pourrez basculer entre les rubis.

Vous pouvez sélectionner vos rubygems pré-installés (si vous en avez) via "système @ *".

0
Mahmut Bulut