Attention RVM! Le chemin n'est pas correctement configuré

je viens d'installer rvm sur mon mac, mais je reçois cet avertissement sur global commands

Attention! Le chemin n'est pas correctement configuré, '/usr/local/rvm/gems/ruby-1.9.3-p194/bin' n'est pas à la première place, habituellement ceci est causé par des fichiers d'initialisation de shell - vérifiez-les pour 'chemin=...'entrées, il peut également être utile de rajouter RVM à vos fichiers dotfiles:' RVM get stable --auto-dotfiles', pour corriger temporairement dans cette session shell, exécutez:'RVM use ruby-1.9.3-p194'.

my $PATHS confirme l'avertissement:

$echo :$PATH:
:/usr/local/rvm/bin:/usr/local/heroku/bin:/usr/local/rvm/gems/ruby-1.9.3-p194/bin:/usr/local/rvm/gems/ruby-1.9.3-p194@global/bin:/usr/local/rvm/rubies/ruby-1.9.3-p194/bin:/usr/local/rvm/bin:/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:

comme suggéré, j'ai d'abord essayé rvm get stable --auto-dotfiles en vain, puis j'ai vérifié mes fichiers d'initialisation de shell. Mon./ bash_profile:

export PATH=/usr/local/bin:/usr/local/sbin:$PATH
export PATH=/usr/local/share/python:$PATH
PATH=$PATH:$HOME/bin:/opt

Mon /Users/Utilisateur/.bash_profile semble être le coupable:

export PS1="[w]$"
alias ll='ls -laGH'
alias .='echo $PWD'

### Added by the Heroku Toolbelt
export PATH="/usr/local/heroku/bin:$PATH"

# rvm
PATH=/usr/local/rvm/bin:$PATH
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*

la raison est que si je supprime Heroku Toolbelt et les chemins rvm (qui étaient des réponses suggérées par d'autres débordements de pile questions), /usr/local/rvm/gems/ruby-1.9.3-p194/bin serait à la première place et le problème est résolu. Cependant, je ne sais pas quoi faire avec la ceinture à outils Heroku. De plus, PATH=/usr/local/rvm/bin:$PATH ne devrait-il pas placer rvm en premier?

je dois rater une solution insignifiante.

Notes complémentaires: $rvm --debug get head ne produit aucune note d'installation à ce sujet, à l'exception de l'avertissement affiché ci-dessus.

mise à jour: l'appel rvm system corrige le problème, mais seulement dans la session shell actuelle. $echo $PATH produit maintenant:

:/usr/local/heroku/bin:/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/rvm/bin:

qu'est Ce qu'une solution permanente?

25
demandé sur Johnz133 2014-03-26 07:07:22

7 réponses

j'ai le même problème avec rvm 1.25.26.

solution:

j'ai modifié ~/.bashrc comme suit:

## rvm
PATH="$GEM_HOME/bin:$HOME/.rvm/bin:$PATH" # Add RVM to PATH for scripting
[ -s ${HOME}/.rvm/scripts/rvm ] && source ${HOME}/.rvm/scripts/rvm

cause:

d'Alerte est déclenché à l' __rvm_chemin_correspondre_gem_à la maison_cochez() la fonction dans $HOME/.rvm/scripts/functions/cli .

si le début de $PATH ne commence pas par $GEM_HOME/bin , un message d'avertissement s'affiche.

__rvm_path_match_gem_home_check()
{
  (( ${rvm_silence_path_mismatch_check_flag:-0} == 0 )) || return 0
  [[ -n "${GEM_HOME:-}" ]] || return 0
  case "$PATH:" in
    ($GEM_HOME/bin:*) true ;; # all fine here
    (*:$GEM_HOME/bin:*)
      __rvm_path_match_gem_home_check_warning "is not at first place"
      ;;
    (*)
      __rvm_path_match_gem_home_check_warning "is not available"
      ;;
  esac
}
51
répondu utwang 2014-05-31 06:23:41

dans mon cas, Heroku avait ajouté ce qui suit à mon .bashrc:

### Added by the Heroku Toolbelt
export PATH="/usr/local/heroku/bin:$PATH"

remarquez comment il se prépare au chemin. Tout ce que j'avais à faire, c'était de changer pour:

### Added by the Heroku Toolbelt
export PATH="$PATH:/usr/local/heroku/bin"

Et mon problème a été résolu!

si vous n'avez pas Heroku, cherchez autre chose qui pourrait se préparer à votre chemin. Vraiment, RVM veut juste s'assurer qu'il a une chance équitable de charger Ruby avant tous les gemmes qui comprennent eux - mêmes dans le chemin se chargent.

15
répondu Matthew Cullum 2015-02-22 07:25:39

la solution était d'exécuter

$rvm install ruby-head
$rvm use ruby-head

avec une option $rvm docs generate-ti

j'utilisais une version obsolète de Ruby sur mon système, la mise à jour à la version actuelle l'a corrigé.

5
répondu Johnz133 2014-03-26 17:04:30

Recherchez vos fichiers de configuration pour:

export PATH="$PATH:$HOME/.rvm/bin" # Add RVM to PATH for scripting

remplacer cette ligne par:

export PATH="$HOME/.rvm/bin:$PATH" # Add RVM to PATH for scripting

pour s'assurer que le code RVM est au début de votre $PATH. Assurez-vous également qu'aucun autre code ne se place au début de $PATH.

3
répondu Mirror318 2016-12-11 21:42:40

parce que j'utilisais la version ubuntu de rvm, j'avais besoin de le mettre dans mon .profil:

PATH="$GEM_HOME/bin:/usr/share/rvm/bin:$PATH" # Add RVM to PATH for scripting
[ -s /usr/share/rvm/scripts/rvm ] && source /usr/share/rvm/scripts/rvm
1
répondu Karen 2018-08-15 15:31:16

Il semble, et la fin de .bashrc, vous devez garantir que le chemin rvm est au début de $PATH

0
répondu allenfantasy 2015-08-05 16:23:58

exact. Je'dumping cette réponse que j'ai passé des heures de recherche, sans succès. J'espère que cela va sauver quelqu'un d'autre peu de temps.

mon problème était d'avoir deux têtes ruby installées et apparemment, la version ruby était aussi un problème.

➜ rvm list                   
Warning! PATH is not properly set up, '/home/ma/.rvm/gems/ruby-1.8.7-head/bin' is not at first place.
         Usually this is caused by shell initialization files. Search for 'PATH=...' entries.
         You can also re-add RVM to your profile by running: 'rvm get stable --auto-dotfiles'.
         To fix it temporarily in this shell session run: 'rvm use ruby-1.8.7-head'.
         To ignore this error add rvm_silence_path_mismatch_check_flag=1 to your ~/.rvmrc file.

rvm rubies

=> ruby-1.8.7-head [ x86_64 ]
   ruby-1.8.7-p374 [ x86_64 ]
   ruby-2.3.0 [ x86_64 ]
   ruby-2.4.0 [ x86_64 ]
 * ruby-head [ x86_64 ]

# => - current
# =* - current && default
#  * - default

dans ce cas, (en essayant toutes les solutions ci-dessus, ce et ce ) en réglant mon défaut à ruby-head [ x86_64 ] et en redémarrant le terminal le Warning! et ma version ruby actuelle persistait comme le montre l'extrait ci-dessus.

pour fixer que:

rvm remove ruby-1.8.7-head

maintenant, si je redémarre le terminal:

➜ rvm list                  

rvm rubies

   ruby-1.8.7-p374 [ x86_64 ]
   ruby-2.3.0 [ x86_64 ]
   ruby-2.4.0 [ x86_64 ]
=* ruby-head [ x86_64 ]

# => - current
# =* - current && default
#  * - default
0
répondu marco 2017-06-18 10:28:23