これはRTFM型の質問ですが、私はまだrails/ruby/bundlerには新しく、やや混乱しています。私たちのconfig/application.rb
ファイルでrails bundle install productionのみ
このバンドラ・セグメントがあります:
if defined?(Bundler)
# If you precompile assets before deploying to production, use this line
Bundler.require(*Rails.groups(:assets => %w(development test)))
# If you want your assets lazily compiled in production, use this line
# Bundler.require(:default, :assets, Rails.env)
end
と私たちのGemfile
に我々は異なるグループを使用し、例えばが
group :development, :test do
gem "rspec-rails", ">= 2.7.0", :group => [:development, :test]
gem 'shoulda-matchers'
gem 'watchr'
gem 'spork', '~> 1.0rc'
gem 'spectator'
gem 'debugger'
gem 'wirble'
end
しかし、私はRAILS_ENV=production bundle install
(またはbundle install --deployment
)を実行すると、それはまだ、開発/テストグループから宝石をインストールする...
は、なぜこれが起こるんまたはどのように私は適切にこの作業を行うことができますか?
私は '--without'について知っていますが、特に' config/application.rb'の設定ディレクティブ(これを正確に扱うことになっています)と、この引用を考慮すると、 3はbundlerのサポートでベーキングされています。](http://gembundler.com/rails3.html) – gingerlime
バンドルインストールコマンドは、Railsとはまったく独立しています。あなたのGemfileを見るだけで、上記の設定であなたのアプリケーションが実際に必要とするライブラリは気にしません。実際には、Bundler.requireをスキップし、任意のグループから手動でlibsを要求することができます。私は同意します.RailsはBundlerとこの場合よく統合できますが、そうではありません。 –
私は参照してください。ですから、レールはバンドラ(つまり 'config/application.rb'と' config/boot.rb')を知っていると言うのは公正だと思いますが、バンドラはレールについて何も知らない... Gemfileこれらのファイルは使用しません。私はコインが最終的に落ちたと思う。ご協力いただきありがとうございます! – gingerlime