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

Android项目因CMake含dirty标记无法构建,求解决方案

解决CMake 3.18.1版本Gradle同步错误方案

错误信息

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring project ':app'.
> Invalid revision: 3.18.1-g262b901-dirty

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

已尝试无效操作

  • 重新安装CMake 3.18.1版本
  • 清理项目缓存

必须保留CMake 3.18.1版本,以下是针对性解决步骤:

1. 排查CMake安装目录的版本标记

错误中的-dirty后缀表示当前CMake安装目录的源码存在未提交修改,导致版本字符串异常:

  • 找到Android Studio SDK下的CMake路径(通常为SDK安装目录/cmake/3.18.1)
  • 打开目录内的version.txt文件,确认是否包含-dirty后缀
  • 若存在该后缀,删除整个3.18.1目录,通过Android Studio的SDK Manager重新安装CMake 3.18.1(禁止手动修改目录内文件或解压第三方包)

2. 强制指定CMake绝对路径

在项目根目录的local.properties文件中添加CMake的完整安装路径,避免Gradle自动检测异常版本:

cmake.dir=/你的SDK路径/cmake/3.18.1

替换为本地实际路径后,重新同步项目。

3. 修正build.gradle中的CMake版本配置

确保app模块的build.gradle中仅指定纯版本号,不带额外后缀:

android {
    ...
    externalNativeBuild {
        cmake {
            version "3.18.1"
        }
    }
}

4. 彻底清理缓存

  • 删除项目根目录下的.gradle、build文件夹
  • 删除用户目录下的.gradle/caches目录(Windows:C:\Users\<用户名>\.gradle\caches;Mac:~/Library/Caches/gradle)
  • 重启Android Studio,执行File -> Invalidate Caches... -> Invalidate and Restart

5. 排除系统CMake环境干扰

若系统中安装了独立CMake,可能覆盖Android Studio内置版本:

  • 临时移除系统环境变量中的CMake路径
  • 重启Android Studio后重新同步项目

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 20:03:12