具有依赖关系的 Android 库无法正确解析

标签 android gradle android-library

所以我有一个 Android 库项目,SimpleWidget .我将它发布到 jcenter。

我可以创建一个新项目并添加 implementation 'my.project:simplewidget:1.2.3'一切正常,我可以使用SimpleWidget实例及其公共(public) API。

现在我制作了另一个 Android 库项目,ComplexWidget . ComplexWidgetSimpleWidget 的子类.我加 implementation 'my.project:simplewidget:1.2.3'到 build.gradle,一切都解决了,事实上,我什至可以不用 lint 大喊像 ComplexWidget complexWidget = new ComplexWidget() 这样 super 基本的东西。 .

但是,该项目不会编译。任意 ComplexWidget返回或参数类型为 SimpleWidget 的方法(例如,许多继承的方法,或接受 SimpleWidget 参数的接口(interface),或返回 SimpleWidget 实例的工厂)将无法编译并且 Android Studio 会提示“无法访问 my.project.SimpleWidget”。

不知道我是否应该提到它,因为害怕把水弄混,但如果我命令点击SimpleWidget例如,public class ComplexWidget extends SimpleWidget ,我在文件顶部收到“库源与 SimpleWidget 类的字节码不匹配”的警告。

有任何想法吗?

TYIA

最佳答案

使用 api 'my.project:SimpleWidget:1.2.3'反而

关于具有依赖关系的 Android 库无法正确解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55877127/

相关文章:

安卓 : Change theme background of Popup menu

android - Android Studio 中的库项目

Android库项目——混淆

android - 静态变量失去值(value)

android - 通过node/express js同步本地android数据库

java - 我在 Android 代码中做错了什么?

gradle - 找不到根项目参数的方法 sonarqube()

gradle - 确保运行特定的Gradle任务

android - React native 构建开始失败,因为 Gradle 找不到 Could not find play-services-basement

android - 任务 ':app:kaptDebugKotlin' 的 java.lang.reflect.InvocationTargetException(无错误消息)