rvm current
говорит, что я переключился на какой-то конкретный гемсет, gem list
перечисляет только один rake
драгоценный камень, так почему мне нужно добавить bundle exec
?Почему при использовании gemset требуется `bundle exec`?
$ rvm current
[email protected]
$ gem list rake
*** LOCAL GEMS ***
rake (10.4.2)
$ rake
rake aborted!
Gem::LoadError: You have already activated rake 10.4.2, but your Gemfile requires rake 11.1.2. Prepending `bundle exec` to your command may solve this.
/home/rm/.rvm/gems/[email protected]/gems/bundler-1.12.5/lib/bundler/runtime.rb:35:in `block in setup'
/home/rm/.rvm/gems/[email protected]/gems/bundler-1.12.5/lib/bundler/runtime.rb:20:in `map'
/home/rm/.rvm/gems/[email protected]/gems/bundler-1.12.5/lib/bundler/runtime.rb:20:in `setup'
/home/rm/.rvm/gems/[email protected]/gems/bundler-1.12.5/lib/bundler.rb:95:in `setup'
/home/rm/.rvm/gems/[email protected]/gems/bundler-1.12.5/lib/bundler/setup.rb:9:in `<top (required)>'
/home/rm/app/releases/20160707125838/config/boot.rb:3:in `<top (required)>'
/home/rm/app/releases/20160707125838/config/application.rb:1:in `<top (required)>'
/home/rm/app/releases/20160707125838/Rakefile:4:in `<top (required)>'
LoadError: cannot load such file -- bundler/setup
/home/rm/app/releases/20160707125838/config/boot.rb:3:in `<top (required)>'
/home/rm/app/releases/20160707125838/config/application.rb:1:in `<top (required)>'
/home/rm/app/releases/20160707125838/Rakefile:4:in `<top (required)>'
(See full trace by running task with --trace)
UPD Позвольте мне сделать себя более ясным. rm
gemset активен, я вижу только один номер rake
(10.4.2
). Но rake-11.1.2
был установлен с bundler
. И когда я запускаю bundle exec rake
, вызывается rake-11.1.2
. Так почему бы мне не увидеть его в списке драгоценных камней, о котором сообщает gem
? Разве гемзеты не должны изолировать множества драгоценных камней друг от друга.
О, и забыл упомянуть, что это производственная машина.