Gradle项目同步失败解决:Invalid revision报错排查与方案
Gradle构建报错:Invalid revision: 3.22.1-g37088a8-dirty 解决方案
问题原因
这个错误并非Gradle版本本身导致,而是**Android Gradle Plugin(AGP,安卓构建插件)**的版本标识异常。3.22.1-g37088a8-dirty这类带-dirty后缀的版本号,是本地编译AGP源码时因存在未提交的代码修改生成的非官方版本标记——说明你的项目依赖了一个非官方发布、被本地修改过的AGP版本。
关于Gradle环境变量的疑问
你未配置系统级Gradle环境变量的操作完全正确。Android Studio会通过Gradle Wrapper机制,自动为每个项目下载并使用对应版本的Gradle,无需全局配置环境变量。
具体解决方案
1. 修正AGP版本配置
打开项目根目录下的Project级build.gradle文件,找到buildscript块内的AGP依赖配置,确保版本号为官方稳定版:
buildscript { repositories { google() mavenCentral() } dependencies { // 对应Android Studio 3.1.2的官方AGP版本为3.1.2 classpath 'com.android.tools.build:gradle:3.1.2' } }
AGP版本需与Android Studio版本匹配:AS 3.1.x系列对应AGP 3.1.x版本,不要随意使用非匹配的版本号。
2. 清理Gradle缓存
- 关闭Android Studio
- 删除项目根目录下的
.gradle文件夹 - 删除用户目录下的
.gradle/caches子文件夹(Windows路径:C:\Users\<你的用户名>\.gradle\caches;Mac路径:~/.gradle/caches) - 重新打开项目,等待Gradle自动重新下载所有合法依赖
3. 移除本地自定义AGP来源
检查项目配置中是否存在本地Maven仓库、本地AGP的aar/jar包引用,这类配置会让Gradle优先使用本地修改版AGP,需全部移除,确保仅从官方仓库拉取插件。
4. 验证Gradle Wrapper配置
确认gradle/wrapper/gradle-wrapper.properties中的distributionUrl为官方地址,以Gradle 4.6为例:
distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip
避免URL存在拼写错误或被篡改。
内容的提问来源于stack exchange,提问作者kevin
相关产品推荐
相关产品推荐

