Android升级gradle后引入aar包报错怎么解决

本文小编为大家详细介绍“Android升级gradle后引入aar包报错怎么解决”,内容详细,步骤清晰,细节处理妥当,希望这篇“Android升级gradle后引入aar包报错怎么解决”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

    问题

    android 在升级 gradle 后,之前引入 aar 包的方式发生了变化,打包的时候会报错。报错信息大概如下:

    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 :commonlib project caused this error: /Users/projectName/libs/staticip.aar

    这里记录一下解决的过程。

    环境

    我这边项目使用的环境信息大概如下:

    • Android Studio:

    Android Studio Flamingo | 2022.2.1
    Build #AI-222.4459.24.2221.9862592, built on March 31, 2023
    Runtime version: 17.0.6+0-17.0.6b802.4-9586694 aarch74
    VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
    macOS 13.3.1
    GC: G1 Young Generation, G1 Old Generation
    Memory: 3072M
    Cores: 8
    Metal Rendering is ON
    Registry:
        editor.focus.mode.color.light=415967
        ide.editor.tab.selection.animation=true
        external.system.auto.import.disabled=true
        ide.text.editor.with.preview.show.floating.toolbar=false
        ide.new.editor.tabs.vertical.borders=true
        ide.balloon.shadow.size=0
        editor.focus.mode.color.dark=415967
        gradle.version.catalogs.dynamic.support=true
    Non-Bundled Plugins:
        idea.plugin.protoeditor (222.4459.16)
        com.intellij.marketplace (222.4459.28)
        com.mallowigi (80.1.0)
        com.chrisrm.idea.MaterialThemeUI (7.14.2)
    • gradle 版本:

    classpath 'com.android.tools.build:gradle:7.4.2'
    • aar 库引入方式:通过直接将 aar 包放到 libs 目录的方式引入。

    解决步骤

    1. 新建本地库目录

    切换到 project 模式:

    Android升级gradle后引入aar包报错怎么解决  android 第1张

    在项目根目录右键新建文件夹,名字随便,我这里设置为:LocalRepo

    Android升级gradle后引入aar包报错怎么解决  android 第2张

    2. 新建 aar 模块

    • LocalRepo 目录中新建新文件夹,用于存放 aar 模块,我这里取名为:staticip

    • 将你原来在 libs 中的 aar 库剪切到 LocalRepo 目录下。

    • LocalRepo 目录中新建 build.gradle 文件,填入如下内容:

    configurations.maybeCreate("default")  
    artifacts.add("default", file("staticip.aar"))

    记得将 staticip.aar 替换为你自己的 arr 库名。

    最后的目录结构如下:

    Android升级gradle后引入aar包报错怎么解决  android 第3张

    3. 导入模块

    编辑 settings.gradle,加入如下内容:

    include ':LocalRepo:staticip'

    4. 引入模块

    在你之前要引入这个 arr 库的模块中,修改它的 build.gradle 文件:

    dependencies {
        implementation project(':LocalRepo:staticip')
    }

    5. 同步项目

    最后别忘了 sync 一下:

    Android升级gradle后引入aar包报错怎么解决  android 第4张

    读到这里,这篇“Android升级gradle后引入aar包报错怎么解决”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注蜗牛博客行业资讯频道。

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

    评论

    有免费节点资源,我们会通知你!加入纸飞机订阅群

    ×
    天气预报查看日历分享网页手机扫码留言评论Telegram