Gradle配置优先settings仓库时添加jitpack仓库触发报错如何解决
问题原因
该报错是Gradle 7.0及以上版本的默认规则导致的,新版本默认开启了「优先使用settings文件配置仓库」的校验,禁止在根build.gradle的allprojects块中额外添加仓库。
解决方案
方案一:官方推荐配置(建议使用)
直接在项目根目录的settings.gradle中添加仓库即可,无需修改根build.gradle配置:
- 找到项目根目录下的
settings.gradle文件,定位到dependencyResolutionManagement配置块 - 在该块的
repositories中新增jitpack仓库地址,配置示例如下:
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() // 新增jitpack仓库配置 maven { url 'https://www.jitpack.io' } } }
添加完成后删除你之前在根build.gradle中新增的allprojects配置块,同步Gradle即可生效。
方案二:兼容旧配置逻辑
如果你需要保留原来在allprojects中配置仓库的旧写法,只需要修改settings文件的校验规则即可:
- 将
dependencyResolutionManagement块中的repositoriesMode值修改为RepositoriesMode.PREFER_PROJECT,配置示例如下:
dependencyResolutionManagement { // 修改为优先使用项目build.gradle中的仓库配置 repositoriesMode.set(RepositoriesMode.PREFER_PROJECT) repositories { google() mavenCentral() } }
修改后你之前在根build.gradle中写的allprojects仓库配置即可正常生效,同步Gradle即可。
内容的提问来源于stack exchange,提问作者André Nogueira
相关产品推荐
相关产品推荐

