如何在Android Studio中使用aar的依赖关系?

如何在Android Studio中使用aar的依赖关系?,android,android-studio,aar,Android,Android Studio,Aar,我在Android Studio项目中使用aar包时遇到了一个问题。 昨天我编写了一个名为xEditText的Android Studio库,添加了如下依赖项: 编译com.ninealdroids:library:2.4.0 然后我将这个库构建成一个aar包。 当我在项目中使用aar包时,如下所示: 编译xEditText版本 然后运行,我发现它崩溃了,这是一个“错误膨胀类”错误。后来我得到了答案,当我在我的项目中添加编译时,如下所示: 编译com.ninealdroids:library:2

我在Android Studio项目中使用aar包时遇到了一个问题。 昨天我编写了一个名为
xEditText
的Android Studio库,添加了如下依赖项:

编译
com.ninealdroids:library:2.4.0

然后我将这个库构建成一个aar包。 当我在项目中使用aar包时,如下所示:

编译
xEditText版本

然后运行,我发现它崩溃了,这是一个“错误膨胀类”错误。后来我得到了答案,当我在我的项目中添加编译时,如下所示:

编译
com.ninealdroids:library:2.4.0

它运行良好


但是我不知道为什么我必须编译依赖项
com.ninealdroids:library:2.4.0
我的库中再次编译了哪些内容到我的项目中?

您可以将aar文件添加为模块: 文件->新建->新模块->导入.JAR或.AAR包

但我不知道为什么我必须再次编译库中编译到我的项目中的依赖项(com.ninealdroids:library:2.4.0)

因为
xEditText
是一个库,
nineodeldroid
成为任何使用
xEditText
的项目的可传递依赖项。默认情况下,可传递依赖项不包含在输出
aar
文件中

可以通过指定
xEditText
中应包含
nineodeldroid
来修复此行为,如下所示:

compile ('com.nineoldandroids:library:2.4.0') {
    transitive = true
}

非常感谢。我是Android开发的新手。我按照你说的做了尝试,但效果不太好。是因为我的aar包是以“调试模式”输出的吗?我不知道为什么在“outputs--aar”文件夹中只有xEditText-debug.aar。我如何生成发布类型的aar包?你把“transitive=true”放在文件的什么地方了xEditText模块,还是在应用程序模块内部?