0

今日、私は再びバンドラーで恐ろしいエラーに遭遇しました。ここにはたくさんの質問とデバッグのコツがありますが、私はもう少し深く掘り下げ始めました。奇妙なことに、削除しても、2つの異なるプロジェクトで異なる結果が得られます。私が知る限り、それらはrvmの観点からは同じであるはずですが、異なる結果が得られます。2つの新しいbashウィンドウで、Linux Mint:ERROR: Gem bundler is not installed, run gem install bundler first..rvmrcbin.bundle

~ $ cd ${PROJECT_PATH}/project1
project1 $ echo $PATH
/usr/local/heroku/bin:/home/fletch/.rvm/gems/ruby-1.9.3-p385/bin:/home/fletch/.rvm/gems/ruby-1.9.3-p385@global/bin:/home/fletch/.rvm/rubies/ruby-1.9.3-p385/bin:/home/fletch/.rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
project1 $ tree -L 1 -a
.
|-- app
|-- config
|-- config.ru
|-- db
|-- Gemfile
|-- Gemfile.lock
|-- .git
|-- .gitignore
|-- Guardfile
|-- lib
|-- log
|-- Procfile
|-- public
|-- Rakefile
|-- .rspec
|-- script
|-- spec
|-- tmp
`-- vendor

11 directories, 15 files

これが望ましい出力です。今、他のプロジェクトのために:

~ $ cd ${PROJECT_PATH}/project2
project2 $ echo $PATH
/home/fletch/.rvm/gems/ruby-1.9.3-p385/bin:/home/fletch/.rvm/rubies/ruby-1.9.3-p385/bin:/home/fletch/.rvm/bin:/usr/local/heroku/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
project2 $ tree -L 1 -a
.
|-- app
|-- config
|-- config.ru
|-- coverage
|-- db
|-- Gemfile
|-- Gemfile.lock
|-- .git
|-- .gitignore
|-- Guardfile
|-- lib
|-- log
|-- public
|-- Rakefile
|-- README.md
|-- .rspec
|-- script
|-- spec
|-- tmp
`-- vendor

12 directories, 8 files

なぜ私の道は違ったものになるのですか?2つ目は、グローバルgemsetをロードせず、何らかの理由でherokuを少し後方に移動します。参考までに、新しいコンソールを開いたときのデフォルトのパスは最初のパスと一致します。rvmは、どのプロジェクトがどのバージョンを使用しているかについて、メモリまたはグローバルファイルに情報を保持していますか?プロジェクト全体でパターンを識別できませんでした。動作するものと動作しないものがあります。

4

1 に答える 1

1

RVM は複数のファイルをサポートし.rvmrcますが、このファイルの 1 つだけがruby​​ を指定するディレクティブGemfileのいずれかと一緒です。bundler

ruby='1.9.3'

または、優先度があり、RVM 固有のコメント:

#ruby=1.9.3-p385
于 2013-02-22T00:36:14.693 に答える