Использование bundle exec может решить эту проблему? - PullRequest
12 голосов
/ 11 января 2012

Вот мой Gemfile

source :rubygems

gem 'rake', '0.9.2.2'
gem 'sinatra'
gem 'activerecord', '3.0.9'
gem 'pg', '~> 0.12.2'
gem 'logger'
gem 'nokogiri'

group :development, :test do
  gem 'rack-test'
  gem 'ruby-debug19'
  gem 'sqlite3'
end

Я запускаю rake console, который работает в других проектах, и теперь я получаю это сообщение:

You have already activated activesupport 3.1.3, but your Gemfile requires activesupport 3.0.9. Using bundle exec may solve this.

Как мне использовать `bundle exec для решения этой проблемы? Что это значит?

Ответы [ 4 ]

41 голосов
/ 21 августа 2013

Чтобы прекратить использование bundle exec rake, вы можете запустить bundle clean --force.Эта команда обновит ваш Gemfile.lock.

11 голосов
/ 11 января 2012

Вы можете запустить bundle exec rake console, что означает, что команда (в данном случае rake console) будет привязана к конкретным драгоценным камням, перечисленным в вашем Gemfile.

7 голосов
/ 15 мая 2014

rubygems-bundler решает эту проблему.Выполните следующие команды:

$ gem install rubygems-bundler

$ $ gem regenerate_binstubs

Затем попробуйте свой пакет снова.

0 голосов
/ 10 января 2017

Вы можете убедиться, что включили rake в свой Gemfile.Если это не так, добавьте его и укажите версию «вы уже активировали».

или вы можете просто обновить его на своем локальном компьютере, например

bundle update rake

Я надеюсь, что это поможет

...