3

/usr/local/rvm/binUbuntu 12.10に RVM のマルチユーザー バージョンがインストールされています。rvm versionRuby を 1.9.3 から 2.0.0 にアップグレードしたとき、または同様のコマンドを実行するたびに次のエラー メッセージが表示されたようです。

$ rvm version
Warning! PATH is not properly set up, '/usr/local/rvm/gems/ruby-2.0.0-p247/bin' is not at first place,
usually this is caused by shell initialization files - check them for 'PATH=...' entries,
it might also help to re-add RVM to your dotfiles: 'rvm get stable --auto-dotfiles',
to fix temporarily in this shell session run: 'rvm use ruby-2.0.0-p247'.

rvm 1.22.16 (stable) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]

同様の質問にリストされている提案を試しましたがrvm get headrvm get head --auto-dotfiles役に立ちませんでした。

私の最後に次のものがあります.bashrc

PATH=$PATH:/usr/local/rvm/bin # Add RVM to PATH for scripting                                                                      

そして、私のパスは次のとおりです。

$ echo $PATH
./bin:/usr/local/sbin:/usr/local/bin:/usr/local/rvm/gems/ruby-2.0.0-p247/bin:/usr/local/rvm/gems/ruby-2.0.0-p247@global/bin:/usr/local/rvm/rubies/ruby-2.0.0-p247/bin:/usr/local/rvm/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

$ which rvm
/usr/local/rvm/bin/rvm

$ which ruby
/usr/local/rvm/rubies/ruby-2.0.0-p247/bin/ruby
4

3 に答える 3

4

RVM とパス

RVM は、PATH で最初にその bin ディレクトリを見つけることを想定しています。RVM は、システム バイナリや gem よりも確実に優先されるようにしたいと考えています。RVM のシステム インストールを適切に行うには、PATH ステートメントを次のようにする必要があります。

PATH=/usr/local/rvm/bin:$PATH

一方、あなたは現在それを逆にしています。これは一般的に正しいことです。

エラーを無視する

自分が何をしているのか本当にわかっている場合は、次を追加できます。

rvm_silence_path_mismatch_check_flag=1

/etc/rvmrcまたは~ /.rvmrcファイルに。これにより、RVM が PATH の最初ではないことについて不平を言うのを防ぐことができますが、ほとんどの人にとって問題を引き起こす可能性が非常に高くなります。

優先したい~/binに Ruby 関連のラッパー スクリプトを配置するなど、これが必要な正当なエッジ ケースが存在する場合があります。ただし、Ruby と RVM のデバッグははるかに困難になるため、which -a <ruby|gem>このオプションを有効にしている場合は、トラブルシューティングの最初のステップとして確認することを忘れないでください。

于 2013-10-04T19:17:40.977 に答える
0

/etc/profile.d/rvm.shそれが問題の原因であることがわかりました。そのコンテンツへのリンク: https://gist.github.com/armhold/6832283

読み取り/実行ビットを削除するためにchmodすると、rvmが再び満足していることがわかります。

手動でインストールする必要があるこのスクリプトの更新がないのだろうか...

于 2013-10-04T20:47:52.343 に答える