私は既存のプロジェクトでダガーを統合することになりましたが、ダガーアノテーションプロセッサーに少し問題があります。ダガーアノテーションプロセッサーがcom/google/common/collect/SetMultimapを見つけられません
私の環境はかなり制限されているので、jcenter()やGoogle Mavenを使って依存関係を取得することはできません。私たちには、すべての依存関係を保存し管理する内部アイビーリポジトリがあります。
つまり、私はDaggerが必要とするすべての依存関係を取り除きましたが、まだ問題があります。 Gradle syncは正常に終了し、依存関係を解決しますが、ビルドすると次のエラーが発生します。
は、明らかに私は、特に指定し、私はテスト目的のために何ができるのリポジトリとしてjcenter()とGoogle Mavenを許可する場合などの依存をしないのですが、これは許されない建物のprodのために、私はすることができる午前例外なくビルドする。error: Bad service configuration file, or exception thrown while constructing Processor object: javax.annotation.processing.Processor: Provider dagger.internal.codegen.ComponentProcessor could not be instantiated: java.lang.NoClassDefFoundError: com/google/common/collect/SetMultimap
エラーを厳密に読み取ると、Daggerがcom.google.comm.collect.SetMutliMapを検出できないことがわかります。
私はこの依存関係を見つけようとかなりの努力をしましたが、このファイルがGuavaの一部であるか、少なくともその一部の機能があることがわかりました。注意すべき
ことの一つは、私はGradleの次のバージョンを使用しています:
//Dagger
compile 'com.google.dagger:dagger:2.10'
annotationProcessor 'com.google.dagger:dagger-compiler:2.10'
その他の依存関係:ここで
classpath 'com.android.tools.build:gradle:3.0.0'
は私の短剣の依存関係は、古いバージョンであるbuild.gradleにあります。
//lifecycle libs
compile "android.arch.lifecycle:runtime:1.0.3"
compile "android.arch.lifecycle:extensions:1.0.0"
annotationProcessor "android.arch.lifecycle:compiler:1.0.0"
compile 'de.greenrobot:eventbus:2.4.1'
compile 'org.apache.commons:commons-lang3:3.4'
compile 'commons-io:commons-io:2.4'
compile 'com.android.support:multidex:1.0.1'
compile 'com.android.support:support-v4:26.1.0'
compile 'com.android.support:design:26.1.0'
compile 'com.github.ganfra:material-spinner:2.0.0'
compile 'com.nulab-inc:zxcvbn:1.1.3'
compile('com.google.android.gms:play-services-vision:10.2.1') {
exclude group: 'com.android.support'
}
compile 'org.zakariya.stickyheaders:stickyheaders:0.7.6'
compile 'com.google.code.gson:gson:2.8.0'
compile('com.google.android.gms:play-services-gcm:10.2.1') {
exclude group: 'com.android.support'
}
compile('com.google.android.gms:play-services-maps:10.2.1') {
exclude group: 'com.android.support'
}
compile('com.google.android.gms:play-services-location:10.2.1') {
exclude group: 'com.android.support'
}
compile 'com.android.support:appcompat-v7:26.1.0'
compile 'com.android.support:cardview-v7:26.1.0'
compile 'com.android.support:support-annotations:26.1.0'
//retrofit dependencies
compile 'com.squareup.okhttp3:okhttp:3.9.0'
compile 'com.squareup.retrofit2:retrofit:2.3.0'
compile 'com.squareup.retrofit2:converter-gson:2.3.0'
compile 'com.squareup.okhttp3:logging-interceptor:3.9.0'
私の制限された環境のため、依存関係を更新できません。私は持っているものの中で働くので、誰かがこれを解決する方法に関するアイディアを持っていますか?
おかげ