如何忽略错误的 pom“模块描述符不一致”(版本)

2023-12-24

我需要一个在 pom.xml 中版本号不一致的依赖项。

Apache XmlSchema-Pom http://repo.maven.apache.org/maven2/org/apache/ws/commons/XmlSchema/1.1/XmlSchema-1.1.pom有版本SNAPSHOT这显然不正确1.1.

根据这个梯度讨论 https://discuss.gradle.org/t/how-can-i-ignore-bad-pom-inconsistent-module-descriptor-and-download-jar/6495如果将 Maven 存储库指定为 ivy 存储库,则应该可以,添加@jar or transitive = false依赖,所有这些对我都不起作用

Here my build.gradle与我的尝试:

group 'de.company'
version '1.0-SNAPSHOT'

apply plugin: 'maven'
apply plugin: 'java'

repositories {
    // specified as ivy repo
    // ivy {
    //     url = mavenCentral().url
    // }
    mavenCentral()
}

dependencies {
    // with @jar and transitive
    // compile (group: 'org.apache.ws.commons', name: 'XmlSchema', version: '1.1', ext: 'jar') {
    //     transitive = false
    // }
    compile group: 'org.apache.ws.commons', name: 'XmlSchema', version: '1.1'
}

这是 gradle 输出的错误消息:

Could not resolve all dependencies for configuration ':compileClasspath'.
> Could not resolve org.apache.ws.commons:XmlSchema:1.1.
  Required by:
      de.company:gradle-test:1.0-SNAPSHOT
   > Could not resolve org.apache.ws.commons:XmlSchema:1.1.
      > inconsistent module metadata found. Descriptor: org.apache.ws.commons:XmlSchema:SNAPSHOT Errors: bad version: expected='1.1' found='SNAPSHOT'

我解决这个问题的方法是不同的,我不想接触artifactory pom,因为我无权访问artificialy。这是 gradle.build 中您需要的代码

repositories {
    maven {
        url 'http://xxxxx/xx'
        metadataSources {
             artifact() //Look directly for artifact
        }
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何忽略错误的 pom“模块描述符不一致”(版本) 的相关文章

随机推荐