在java 11和maven中使用Dagger



谷歌daggerDIF工作与java 11?

如果没有,有什么替代方案,因为改变项目使用java 8是不可能的。

是的,可以在maven和java 11中使用dagger2.32。

我在编译过程和eclipse环境中遇到了问题。

Eclipse显示没有找到DaggerMyClassComponent的错误。DaggerMyClassComponent是一个从MyClassComponent中生成的带有dagger@Component注释的类。这个类(和其他类)是在执行mvn clean compile命令时生成的。在此之前,eclipse将显示错误。

同样,如果你运行'Maven ->更新项目',eclipse将修复这个问题(它将从maven运行编译阶段)。你可以在/target/generated-sources/annotation文件夹中检查生成的类。

另外,在使用dagger和eclipse进行开发时,如果更改了带有@Components和@Modules注释的类,可能会出现错误。运行'mvn clean'解决了与从Dagger生成的类相关的错误,因为该命令会擦除/target文件夹的内容(包括从Dagger生成的旧类)。

最新更新