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

如何在build.gradle.kts中编写构建完成后移动.aar文件的代码?

如何在build.gradle.kts中编写构建完成后移动.aar文件的代码?

刚接触Android插件开发确实容易被各种过时的Gradle写法搞懵,我太懂这种找不到最新教程的憋屈了!给你说个适配Kotlin DSL(也就是你用的build.gradle.kts)的靠谱办法,亲测在AS 2023.x版本完全能用。

你之前试的doLast思路是对的,但可能是任务依赖或者路径写法不对导致没生效。直接给你贴可复用的代码,再一步步解释:

首先打开你生成插件的那个模块的build.gradle.kts,在文件末尾添加这段代码:

// 注册一个移动AAR到Unity的任务
tasks.register("moveAarToUnity") {
    // 依赖assemble任务,确保所有构建AAR的操作完成后再执行移动
    dependsOn("assemble")

    doLast {
        // 自动获取AAR的生成目录(Gradle推荐的写法,比硬编码build/更可靠)
        val aarSourceDir = project.layout.buildDirectory.dir("outputs/aar")
        // 替换成你自己的Unity项目插件目录,支持绝对路径或相对路径(如果两个项目同目录)
        val unityTargetDir = file("../YourUnityProject/Assets/Plugins/Android")

        // 先确保目标目录存在,不存在就创建
        if (!unityTargetDir.exists()) {
            unityTargetDir.mkdirs()
        }

        // 复制所有AAR文件到Unity目录(要移动的话把copy换成move即可)
        copy {
            from(aarSourceDir)
            include("*.aar") // 只处理.aar文件
            into(unityTargetDir)
            duplicatesStrategy = DuplicatesStrategy.REPLACE // 已有同名文件就覆盖
        }

        println("✅ AAR文件已成功同步到Unity插件目录!")
    }
}

// 可选配置:让构建完成后自动触发移动任务,不用手动调用
tasks.named("assemble") {
    finalizedBy("moveAarToUnity")
}

给你划几个重点:

  • 任务依赖:dependsOn("assemble")保证这个移动任务只会在所有构建AAR的操作都完成后才跑,避免还没生成AAR就去移动的问题
  • 路径写法:用project.layout.buildDirectory获取构建目录是Gradle 7+的推荐写法,适配不同的项目结构;Unity的路径如果和Android项目在同一个父文件夹下,用相对路径../xxx比绝对路径更灵活,换电脑也不用改
  • 复制/移动选择:我这里用的copy,建议保留原AAR作为备份;如果确实要删除原文件,把copy块改成move块就行
  • 自动触发:最后那段finalizedBy是让你点AS里的构建按钮,或者执行./gradlew assemble时,自动帮你跑移动任务,不用每次手动执行moveAarToUnity任务

还有几个小提醒:

  • 如果只需要同步release版本的AAR,把所有的assemble换成assembleRelease就行,debug版本就不会触发移动了
  • 要是遇到找不到文件的问题,可以在doLast里加一行println(aarSourceDir.get().asFile.listFiles()),打印源目录的文件,排查是不是路径写错了
  • 执行任务时如果报权限错误,先关掉Unity再构建,避免Unity锁定了插件目录的文件

备注:内容来源于stack exchange,提问作者Eric

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.17 09:29:35