如何让Rails从插件加载中排除一些捆绑的宝石?

时间:2010-08-19 16:53:49

标签: ruby-on-rails ruby plugins dependencies bundler

我有一个使用Bundler进行依赖关系管理的Rails应用程序。我的Gemfile

中有以下内容
# default group:
gem 'json'

group 'development' do
  gem 'my_profiler'
end

group 'test' do
  gem 'mocha'
end

group 'deployment' do
  gem 'foo'
end

我在初始化程序中调用Bundler.setup(:default, RAILS_ENV.to_sym)Bundler.require(:default, RAILS_ENV.to_sym)

问题在于,由于Bundler将宝石放入vendor/bundle/,因此Rails初始化所有宝石,其中init.rb不仅仅是当前环境的宝石。如何防止Rails自动加载Foo的init.rb

2 个答案:

答案 0 :(得分:11)

您可以使用--without标志排除环境

$ bundle install --without development test

http://gembundler.com/groups.html

答案 1 :(得分:1)

您使用的是哪种版本的捆绑包?最近的那些不应该安装在供应商