【发布时间】:2015-04-22 00:23:46
【问题描述】:
我刚开始使用Dagger 2 进行依赖注入。当我启动我的modules、components 并尝试构建我的应用程序时,gradle 抛出了错误
Error:(4, 24) error: cannot find symbol class Generated
我对其进行了深入研究,发现错误出现在Dagger 生成的类之一中以执行DI。缺少的特定类是javax.annotation.Generated,而引发错误的行是将Dagger 生成的类注释为@Generated("dagger.internal.codegen.ComponentProcessor")
This 问题有助于找到解决方案,即将javax 包添加为依赖项,方法是将compile 'org.glassfish:javax.annotation:10.0-b28' 行添加到我的gradle 构建文件中。这导致了成功的构建。
我的问题是,为什么没有将它添加为 Dagger 的传递依赖项,或者为什么没有其他人遇到这个特定问题(我假设是这样,因为我在这里找不到任何关于此的问题?
【问题讨论】:
-
我遇到了同样的问题。我通过添加“解决”它: compile 'javax.annotation:jsr250-api:1.0' 我不确定为什么这仍然是一个问题,也不知道这是否是正确的解决方案。
-
有关此问题的更多信息,您可以在此处阅读该主题:github.com/google/dagger/issues/95
-
@AlexFu - 太棒了!您介意将其发布为答案吗?