1

プロジェクトをダガー 1 からダガー 2 に移行したいと考えています。ダガー 2 の依存ライブラリを追加した後、プロジェクト内のすべての @Autofactory クラスで「エラー: シンボル クラス MyClassFactory が見つかりません」というエラーが発生します。ただし、これらのクラスは生成されていますが、IDE によって認識されていません。このクラスは、dagger1 で正常に機能しました。同様の問題に直面した場合、誰かが私を助けることができますか?

私は次のライブラリを使用しています。

compile('com.google.auto.factory:auto-factory:1.0-beta3') {
        exclude module: 'guava'
        exclude module: 'javawriter'
        exclude module: 'dagger'
    }
    apt 'com.google.auto.factory:auto-factory:1.0-beta3'

   compile('com.google.auto.service:auto-service:1.0-rc2') {
       exclude module: 'guava'
    }
   apt 'com.google.auto.service:auto-service:1.0-rc2'


    //Dagger 2
    compile 'com.google.dagger:dagger:2.7'
    apt 'com.google.dagger:dagger-compiler:2.7'
    compile 'javax.annotation:jsr250-api:1.0'

助けてください。

4

1 に答える 1

4

AutoFactory がコードを生成するのをブロックする他のコンパイル エラーが発生している可能性があります。エラー ログ全体を調べるか、エラー カウントを javac フラグとして増やして、ダガーの問題があるかどうかを確認してください。これは一般的に機能します-dagger+ AutoFactory 統合テストがあります

于 2016-10-07T13:35:38.580 に答える