我有一个安卓项目,其中一个第三方库依赖于Dagger 1,我的项目依赖于Dagger 2。
Dagger 1和dagger 2具有相同的包名,所以我的应用程序工作正常,但第三方库无法工作,因为dagger 2覆盖了dagger 1包。
不能将Dagger2的包名改为dagger2而不是dagger,因为注释编译器正在生成静态包名为dagger的类。
有没有办法解决这个冲突?
发布于 2015-10-07 22:38:09
在第三方库jar上使用jarjar,或者至少在dagger部分使用jarjar。这将把dagger代码(和任何引用)移动到它自己的包中。因为这是在批注处理器运行之后发生的,所以它应该捕获所有代码。
https://stackoverflow.com/questions/32452209
复制相似问题