クラスのデフォルトの impl があり、それが @Inject コンストラクターを定義している場合、それは素晴らしいことです。システムがそれを拾います。
1 つのアプリがそのデフォルトの impl をサブクラスでオーバーライドしたい場合、そのモジュールで @Provides を定義し、独自のコードでそのサブクラスで「new」を呼び出すことができ、dagger は代わりにその impl を使用します (これまでのところ、私が知る限り、これは機能します)。
ただし、短剣でそのサブクラスをインスタンス化する場合、@Module で「override=true」を宣言せずに実行する方法はありますか? ビルド時のすべての重複チェックで適切な警告が表示されるように、override=true を使用しないのが好きです。
もちろん、それを行う 1 つの方法は、すべてのアプリに @Provides を直接宣言させることです。それは膨満感を増すだけです。
私は以前に GIN (Guice for GWT) を使用したことがあり、.class 参照によって必要なクラスへのバインディングを定義できますが、短剣に似たものは見当たりません。