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

问题描述 投票:0回答:1

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

我可以创建一个新项目并添加implementation 'my.project:simplewidget:1.2.3',一切都按预期工作,我可以使用SimpleWidget实例和他们的公共API。

现在我创建了另一个Android库项目ComplexWidgetComplexWidgetSimpleWidget的子类。我将implementation 'my.project:simplewidget:1.2.3'添加到build.gradle并且一切都结算了,事实上我甚至可以在没有lint大喊大叫的情况下离开,像ComplexWidget complexWidget = new ComplexWidget()那样超级基本。

但是,该项目不会编译。任何具有ComplexWidget的返回或参数类型的SimpleWidget方法(例如,许多继承的方法,或接受SimpleWidget参数的接口,或返回SimpleWidget实例的Factory)将无法编译,并且Android Studio会抱怨“无法访问我的。 project.SimpleWidget”。

不知道我是否应该提起它,因为害怕混淆水域,但如果我命令点击SimpleWidget,例如public class ComplexWidget extends SimpleWidget,我会在文件顶部发出警告:“库源与类的byetcode不匹配SimpleWidget”。

有任何想法吗?

TYIA

android gradle android-library
1个回答
0
投票

改用api 'my.project:SimpleWidget:1.2.3'

© www.soinside.com 2019 - 2024. All rights reserved.