最近gradle升级了,然后编译就出现了这个错误
Direct local .aar file dependencies are not supported when building an AAR.
然后求助了百度,给出了下面解决方案
在module的build.gradle
文件中增加如下内容:
android {
........
repositories {
flatDir {
dirs 'libs'
}
}
}
dependencies {
....
implementation(name: 'BaiduLBS_AndroidSDK_Lib', ext: 'aar')
}
这样子确实可以了,其实就是将libs作为本地仓库,然后引用参考下的库文件。但是编译时候会有这个提示
Using flatDir should be avoided because it doesn't support any meta-data formats.
我是个完美的人,网上又中了一圈,提出File->New->New Module -> Import .jar/.aar。
然后在build.gradle
文件中引入依赖implementation project(path: ':xxxxx')
在旧版本的AndroidStudio中是可以的,在新版的AndroidStudio中已经移除了这个功能,你奶奶的也不知道为啥。
我也懒得翻看更新日志了。所以我用旧版本导入一个aar作为一个module。导入后发现就多了一个build.gradle文件。
综上总结,在高版本的AndroidStudio并且使用了版本的gradle出现了上述问题可以按着如下引用
- 新建一个文件夹XxxModule,将你的aar文件放入,然后在该目录下新建一个build.gradle文件
-
在你需要依赖的工程里面的build.gradle中增加依赖
implementation project(path: ':xxxx')