通过 implementation(files(“libs/xxx.aar”))时候会报错,
原因如下:
在Android项目中,当构建一个AAR库模块时,直接通过implementation files('libs/xxx.aar')引入本地AAR会导致Gradle报错,原因如下:
直接使用 files()的问题
1.依赖打包机制
AAR文件本质是一个压缩包,包含代码、资源、清单文件等。当模块本身是**库模块(生成AAR)**时,Gradle无法将本地AAR中的内容(如类、资源)直接合并到生成的AAR中。这会导致最终的AAR缺少依赖的代码和资源,运行时崩溃。
2. Gradle的限制
Android Gradle插件明确禁止在库模块中直接引用本地AAR,因为生成的AAR无法正确声明这类依赖(不会自动包含它们的内容)。即使旧版插件未报错,生成的AAR也是损坏的。
所以需要这么做:
implementation(group = "", name = "xxx", ext = "aar")
build.gradle.kts 依赖文件尽量换成kts的