今日、私は再びバンドラーで恐ろしいエラーに遭遇しました。ここにはたくさんの質問とデバッグのコツがありますが、私はもう少し深く掘り下げ始めました。奇妙なことに、削除しても、2つの異なるプロジェクトで異なる結果が得られます。私が知る限り、それらはrvmの観点からは同じであるはずですが、異なる結果が得られます。2つの新しいbashウィンドウで、Linux Mint:ERROR: Gem bundler is not installed, run
gem install bundler
first..rvmrc
bin
.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は、どのプロジェクトがどのバージョンを使用しているかについて、メモリまたはグローバルファイルに情報を保持していますか?プロジェクト全体でパターンを識別できませんでした。動作するものと動作しないものがあります。