You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AGP 8.5.1与Gradle 8.9环境下,如何无flatDirs添加*.aar至Android项目?

无需flatDirs添加本地AAR文件到Android项目(适配AGP 8.5.1 + Gradle 8.9)

以下是三种可行的方案,均无需依赖flatDirs仓库:

方案一:直接文件依赖(最简方案)

把AAR文件放到目标模块的libs目录下,直接通过文件路径引入:

Kotlin DSL(build.gradle.kts)

dependencies {
    // 引入单个AAR文件
    implementation(files("libs/your-target-library.aar"))
    
    // 批量引入libs目录下所有AAR文件
    implementation(fileTree(mapOf("dir" to "libs", "include" to listOf("*.aar"))))
}

Groovy DSL(build.gradle)

dependencies {
    // 引入单个AAR文件
    implementation files('libs/your-target-library.aar')
    
    // 批量引入libs目录下所有AAR文件
    implementation fileTree(dir: 'libs', include: ['*.aar'])
}

注意:如果AAR本身包含第三方依赖,你需要手动在dependencies块中添加这些依赖,否则会出现类缺失的编译错误。

方案二:发布到本地Maven仓库(推荐,支持依赖传递)

这种方式能保留AAR的依赖信息,无需手动处理依赖,版本管理更规范:

  1. 配置本地仓库地址
    在项目根目录的build.gradle.kts(或build.gradle)中添加本地仓库:
// 根build.gradle.kts
repositories {
    // 可选:使用系统默认的本地Maven仓库
    mavenLocal()
    // 推荐:使用项目内的专属本地仓库,避免全局仓库干扰
    maven { url = uri("${rootProject.projectDir}/local-maven-repo") }
}
  1. 添加发布任务
    在存放AAR的模块(或单独创建一个模块)的build.gradle.kts中配置Maven发布任务:
plugins {
    id("com.android.library")
    id("maven-publish")
}

android {
    // 你的Android库配置(compileSdk、defaultConfig等)
}

afterEvaluate {
    publishing {
        publications {
            create<MavenPublication>("aarPublish") {
                from(components["release"]) // 选择构建变体,如debug或release
                groupId = "com.yourteam" // 自定义组ID
                artifactId = "your-library" // 自定义库ID
                version = "1.0.0" // 自定义版本号
            }
        }
        repositories {
            maven {
                url = uri("${rootProject.projectDir}/local-maven-repo") // 与根配置的仓库地址一致
            }
        }
    }
}
  1. 执行发布任务
    在终端运行命令,将AAR发布到本地仓库:
./gradlew publish
  1. 引入依赖
    在需要使用AAR的模块中,像引入远程依赖一样添加:
dependencies {
    implementation("com.yourteam:your-library:1.0.0")
}

方案三:作为Android Library模块导入(适合需修改源码的场景)

如果AAR是你自己开发的库,且能获取对应的源码,可直接将其作为模块导入项目:

  1. 打开Android Studio,选择File > New > Import Module
  2. 选择AAR文件所在的目录(或直接选中AAR文件),完成模块导入
  3. 在主模块的build.gradle.kts中添加模块依赖:
dependencies {
    implementation(project(":your-imported-library-module"))
}

这种方式下,Gradle会自动处理所有依赖传递,还能直接修改库的源码。

内容的提问来源于stack exchange,提问作者Martin Zeitler

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 04:00:13