数日前にライオンに切り替えたところ、フォルダ内でTerminalを終了すると、開いたときに(他のタブと一緒に)そのフォルダに戻ったはずです。
これは確かに良い機能ですが、問題はパスを「更新」しないことです。あなたがあなたのappフォルダに.rvmrcファイルを持っていたとしても、それは再びrubyとgemsetを設定しないでしょう。あなたは実際にcdしてまた戻って来なければならないでしょう、それはrvmrcを持つ目的を無効にします。
これは既知のバグですか?それに対する修正/パッチは既にありますか?
編集 Chris Pageの助言に従って、私は追加しました cd "$PWD"
私の.bashrc(私の.bash_profileによってロードされる)の最後の行に
これは順番にrvmrcを「ロード」します。
Last login: Tue Aug 9 11:29:09 on ttys003
Using /Users/eumir/.rvm/gems/ruby-1.9.2-p180 with gemset mygemset
eumir$ gem list
/Users/eumir/.rvm/rubies/ruby-1.9.2-p180/bin/gem:12:in `require': no such file to load -- rubygems (LoadError)
from /Users/eumir/.rvm/rubies/ruby-1.9.2-p180/bin/gem:12
eumir$ ruby -v
ruby 1.8.7 (2009-06-12 patchlevel 174) [i686-darwin10.2.0]
ご覧の通り、gemset( "Using / Users ..."で印刷されています)はロードされましたが、gem listを実行しようとしてrubyのバージョンを表示しようとしてもまだロードされていないことがわかります。 (Rubyのバージョンは1.9.2になるはずです)
編集2
私は自分のrvmを更新しましたが、今ではどの修正も機能していません!
それは私のrvmの中のgemsetを使っていることを出力します、しかし私がgem envをするとき、私はこれを得ます:
eumir$ gem env
RubyGems Environment:
- RUBYGEMS VERSION: 1.3.6
- RUBY VERSION: 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin11.0]
- INSTALLATION DIRECTORY: /Users/eumir/.rvm/gems/ruby-1.8.7-p174@awetest
- RUBY EXECUTABLE: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
- EXECUTABLE DIRECTORY: /Users/eumir/.rvm/gems/ruby-1.8.7-p174@awetest/bin
- RUBYGEMS PLATFORMS:
- ruby
- universal-darwin-11
- GEM PATHS:
- /Users/eumir/.rvm/gems/ruby-1.8.7-p174@mygemset
- /Users/eumir/.rvm/gems/ruby-1.8.7-p174@global
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- :sources => ["http://rubygems.org/", "http://gemcutter.org"]
- "gem" => "--no-ri --no-rdoc"
- REMOTE SOURCES:
- http://rubygems.org/
- http://gemcutter.org
している cd ../
その後 cd myfolder
そしてgem envは次のようになります。
eumir$ gem env
RubyGems Environment:
- RUBYGEMS VERSION: 1.7.2
- RUBY VERSION: 1.8.7 (2009-06-12 patchlevel 174) [i686-darwin10.4.0]
- INSTALLATION DIRECTORY: /Users/eumir/.rvm/gems/ruby-1.8.7-p174@awetest
- RUBY EXECUTABLE: /Users/eumir/.rvm/rubies/ruby-1.8.7-p174/bin/ruby
- EXECUTABLE DIRECTORY: /Users/eumir/.rvm/gems/ruby-1.8.7-p174@awetest/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86-darwin-10
- GEM PATHS:
- /Users/eumir/.rvm/gems/ruby-1.8.7-p174@mygemset
- /Users/eumir/.rvm/gems/ruby-1.8.7-p174@global
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- :sources => ["http://rubygems.org/", "http://gemcutter.org"]
- "gem" => "--no-ri --no-rdoc"
- REMOTE SOURCES:
- http://rubygems.org/
- http://gemcutter.org
これは正しい環境です。ご覧のとおり、gemsetは(gemと共に)正しくロードされていますが、rvmrc rubyの代わりにシステムrubyを使用しています。
cd ./
ディレクトリを更新してrvmrcをリロードします。解決策を探しているのですが、それ以外のものを入力する必要はありません。
.rvmrc
初期の、継承された現在の作業ディレクトリ(すなわち ターミナル しました chdir(2) シェルに起動させる代わりに、シェルを起動する前に cd
それ自体(RVMがそれに気付くことができる場所))。
source path/to/.rvmrc
...