Java Gradle中不一致依赖位置的求解
因此,我正在构建一个gradle项目,下面是我的(简化)构建脚本:Java Gradle中不一致依赖位置的求解,java,gradle,Java,Gradle,因此,我正在构建一个gradle项目,下面是我的(简化)构建脚本: buildscript { repositories { maven { url "https://repo1.maven.org/maven2/" } maven { url 'https://repo.spring.io/plugins-release-local/' } } dependencies { classpath 'org
buildscript {
repositories {
maven { url "https://repo1.maven.org/maven2/" }
maven { url 'https://repo.spring.io/plugins-release-local/' }
}
dependencies {
classpath 'org.springframework.build.gradle:docbook-reference-plugin:0.2.4'
}
}
这给了我一个错误:
> Could not find org.apache.xerces:xercesImpl:2.9.1.
Searched in the following locations:
- https://repo1.maven.org/maven2/org/apache/xerces/xercesImpl/2.9.1/xercesImpl-2.9.1.pom
- https://repo.spring.io/plugins-release-local/org/apache/xerces/xercesImpl/2.9.1/xercesImpl-2.9.1.pom
Required by:
project : > org.springframework.build.gradle:docbook-reference-plugin:0.2.4
显然docbook需要xerces作为依赖项
所以我在maven repository中搜索Xerce,发现Xerce不是在org/apache/xerces/
中,而是在xerces/
中!!!(wtf!?)(见)
那么现在,我应该如何让gradle知道,在搜索xerces for docbook时,它应该转到xerces/
而不是org/apache/xerces/
?根据该插件的定义,正确的存储库应该是:
repositories {
maven { url 'http://repo.spring.io/plugins-release' }
}
事实上,它包含了
先前的答复
尝试将mavenCentral()
添加到存储库列表中
repositories {
mavenCentral()
maven { url "https://repo1.maven.org/maven2/" }
maven { url 'https://repo.spring.io/plugins-release-local/' }
}
尝试使用扩展存储库集
mavenLocal()
mavenCentral()
不需要定义存储库的URL,除非您所在的公司环境中的internet访问受到限制。错误仍然存在。gradle仍在使用
org/apache/xerces
而不是xerces
>在mavenCentral()中查找xerces,但找不到org.apache.xerces:xercesImpl:2.9.1。在以下位置搜索:--@YihuaZhou答案更新谢谢!它正在工作!