我有两个Dagger组件:
@GithubListActivityScope
@Component(modules = { GithubListActivityModule.class, GlideActivityModule.class })
public interface GithubListActivityComponent {
GithubUserListAdapter githubUserListAdapter ( );
//RequestManager requestManager();
LinearLayoutManager linearLayoutManager();
}
注意:我尝试在
RequestManager requestManager();
中注释和取消注释GithubListActivityComponent
我有另一个这样的组件:
@Component(modules = { GithubApiServiceModule.class, GlideModule.class })
public interface GithubAppListComponent {
RequestManager getGlideRequestManager ( );
GithubAPIService getGitHubApiService ( );
}
问题:->当我删除
GithubListActivityComponent
的类文件或删除/注释@Component批注时,当我尝试构建而不删除或注释@Component批注的文件时,应用程序运行良好,但是出现以下错误:错误:(7,66)错误:找不到符号类
DaggerGithubAppListComponent
错误:任务执行失败
':app:compileDebugJavaWithJavac'。
java.lang.StackOverflowError
附言Oracle Jdk版本-> 1.8.0_121
最佳答案
删除循环依赖关系(如果B模块包含A,则A模块不应包含B模块)
我如何解决我的问题:GithubListActivityModule上的依赖于GlideActivityModule的provider(带有@Provide的方法),我将它们移至GlideActivityModule中以删除依赖项。