运行含io.spring.dependency-management插件的Gradle构建文件失败求助
Gradle依赖管理插件找不到的问题解决
我看你遇到了Gradle找不到io.spring.dependency-management插件的问题,先理清楚问题根源,再给你两个可行的解决方案:
首先,你使用的构建文件如下:
buildscript { repositories { mavenCentral() maven { url "https://plugins.gradle.org/m2/" } } } plugins { id "java" id "io.spring.dependency-management" version "1.0.4.RELEASE" }
执行Gradle命令时收到的错误信息:
- 出错原因:
未在以下任何源中找到插件[id: 'io.spring.dependency-management', version: '1.0.4.RELEASE']:
- Gradle核心插件(插件不在'org.grad...)
问题根源
你在buildscript块里配置的仓库,是给构建脚本自身的依赖使用的;而plugins DSL语法查找插件时,它的仓库配置和buildscript是相互独立的。另外,如果你的Gradle版本过旧,也可能不支持直接通过plugins DSL拉取这个插件。
解决方案一:用pluginManagement配置插件仓库(推荐Gradle 4.6+)
这是Gradle官方推荐的插件仓库配置方式,gradlePluginPortal()是https://plugins.gradle.org/m2/的简写,代码更简洁:
pluginManagement { repositories { mavenCentral() gradlePluginPortal() } } plugins { id "java" id "io.spring.dependency-management" version "1.0.4.RELEASE" }
解决方案二:兼容旧版Gradle的传统方式
如果你的Gradle版本低于4.6,就需要在buildscript里声明插件的classpath,再通过apply plugin的方式引入:
buildscript { repositories { mavenCentral() maven { url "https://plugins.gradle.org/m2/" } } dependencies { classpath "io.spring.gradle:dependency-management-plugin:1.0.4.RELEASE" } } apply plugin: "java" apply plugin: "io.spring.dependency-management"
另外提个小建议:可以检查下Gradle版本和插件版本的兼容性,1.0.4.RELEASE版本的依赖管理插件适配Gradle 4.0到5.x左右,如果你的Gradle版本是6+,建议升级插件到1.1.x系列,适配性会更好。
内容的提问来源于stack exchange,提问作者Christophe
相关产品推荐
相关产品推荐

