在 git 子模块中将 aar 与 gradle 6.2.1 一起使用时遇到问题

trouble using aar with gradle 6.2.1 in git submodule

我有一个包含多个模块的 Android 项目。它还有一个由多个模块组成的库,作为 git 子模块。该库是它自己的独立项目,带有一个用于测试的应用程序模块。

- Project
    - app
    - module1
    - module2
    - library (git submodule)
        - app (sample app module for testing library)
        - module1
        - module2 (depends on aar)

更新到 Gradle 6.2.1,我遇到构建错误:

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 dependencies 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 :module2 project caused this error: .../master/module2/libs/my_dependency.aar

现在,如果我通过将 aar 作为模块导入来在库项目中修复此问题,示例应用程序可以正常工作。但是,如果我在我的主项目中使用相同的库分支,我会收到有关 aar 模块没有 AndroidManifest.xml 或未定义 compileSdkVersion 的错误。如果我修复了这两个错误,那么仍然存在 class not found 错误。

git 子模块是否支持这种类型的 aar 模块? 此外,aar 依赖项使用 gradle 5.4.1.

可以正常工作

https://developer.android.com/studio/projects/android-library#AddDependency 答案是使用 Android Studio 的新模块功能。选择 File->New Module->Import .JAR/.AAR Package-> Select 你的 aar.

现在在您的父目录中 settings.gradle,请务必引用新模块。