错误信息:
- What went wrong:
Execution failed for task ‘:XXX:bundleReleaseAar/bundleDebugAar’.
Direct local .aar file dependencies are not supported when building an AAR. The resulting AAR would be broken because the classes and Android resources from any local .aar file depen
dencies would not be packaged in the resulting AAR. Previous versions of the Android Gradle Plugin produce broken AARs in this case too (despite not throwing this error). The following
direct local .aar file dependencies of the :AliPlayer project caused this error:
XXXX.aar
环境:
linux: ubuntu18.04
Android Studio:HedgeHog 2023.1.1 patch 2
出现原因:
gradle升级8.2.2及以上版本,构建包时出现的问题。
本次解决措施:
1、实际引用aar库的modle对aar只编译:
implementation fileTree(dir:'libs', include: ['*.jar', '*.aar'])
更改为
compileOnly fileTree(dir:'aar_libs', include: ['*.jar', '*.aar'])
2、在app/build.gradle 中增加aar的编译引入:
implementation fileTree(dir: '../XXXModule/aar_libs', include: ['*.jar', '*.aar'] dir: 'libs')
注意事项:
1)app/build.gradle 中增加implementation 中dir需要指定目录,或者在app中copy一份。
2)有地方说需要加下面内容的,本次处理删除了所有下面的内容,是可以正常编译的。
repositories {
flatDir {
dirs 'libs',"../aar_libs"
}
}