0

グループに基づいてすべての宝石を分離したアプリケーションがあります

source 'http://rubygems.org'

...
...
...


group :development, :test do
  gem 'ruby-debug19', :require => 'ruby-debug'
  gem 'web-app-theme', '>= 0.6.2'
  gem 'faker'
  gem 'mailcatcher'
  gem "pry"
  gem 'annotate'
  gem "unicorn"
  gem "capistrano"
end

ここで重要なの は、config/application.rb で定義したruby​​-debug19です。

  Bundler.require *Rails.groups(:assets => %w(development test))

まだサーバーを起動するとき

レールサーバー --debugger

それは私にこの以下のエラーを与えます

`require': ロードするファイルがありません -- ruby​​-debug (LoadError)

ruby-debug19 を開発グループから削除し、サーバーが動作するようにデフォルトに設定しました

どちらの場合も、両方の Gemfile.lock を比較しました

cat Gemfile.lock > intial_lock (ruby-debug19が開発グループの場合)

走った

bundle list cat Gemfile.lock > final_lock (ruby-debug19 がデフォルトグループの場合)

もやった

diff initial_lock final_lock

ファイルが同じであることを示す違いはありません

私も試してみました

Bundler.require(:default, :assets, Rails.env)

まだ成功していません

Bundler.require が正常に動作しない理由を誰か教えてください。

4

1 に答える 1

1

アプリケーションディレクトリの.bundleディレクトリトラップに該当していないかどうかを確認します。これは、いつでも、オプションなしでバンドルインストールを実行したときに発生します。

バンドルGemfileマニュアルから直接

bundle install --without testを実行した後、bundlerは、前回のインストールでテストグループを除外したことを記憶します。次回バンドルインストールを実行するときに、-オプションなしで、バンドラーはそれを呼び出します。

アプリケーションディレクトリから.bundle/configディレクトリを削除するだけです。削除する前に、まずコンテンツを確認してください。

この助けを願っています

于 2012-06-08T05:37:12.730 に答える