我要你,因为我对maven和jackson-core-asl依赖有问题,希望您能对我有所帮助。
自今天早上(15/4/2019)以来,由于以下错误,我们的CI出现了问题:
Failed to collect dependencies at org.codehaus.jackson:jackson-core-asl:jar:[1.9.13,1.9.13]: No versions available for org.codehaus.jackson:jackson-core-asl:jar:[1.9.13,1.9.13] within specified range -> [Help 1]
只要它发生在一个大型Maven项目中,我就创建以下mini pom.xml,以弄清正在发生什么。
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.davide</groupId>
<artifactId>davide-test</artifactId>
<version>1.0.0-SNAPSHOT</version>
<name>my-app</name>
<dependencies>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-core-asl</artifactId>
<version>[1.9.13]</version>
</dependency>
</dependencies>
</project>
如果对上一个pom运行mvn clean install
,则会收到后面提到的错误。
我正在使用以下Maven配置
$ mvn -version
Apache Maven 3.5.3 (3383c37e1f9e9b3bc3df5050c29c8aff9f295297; 2018-02-24T20:49:05+01:00)
Maven home: /home/davide.pallaoro/.sdkman/candidates/maven/current
Java version: 1.8.0_171, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-8.0.171-oracle/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-957.10.1.el7.x86_64", arch: "amd64", family: "unix"
我在$HOME/.m2/settings.xml
中没有自定义配置(该文件在我的机器中不存在)
但是,如果您将版本从[1.9.13]更改为1.9.13或[1.9.9],然后运行mvn clean install
,它将可以正常工作。
因此,当版本为时会编译:
版本为时,它不会编译:
这个问题似乎是在2019年4月15日星期一开始的,因为在2019年4月12日星期五我们没有这些构建问题,并且我们正在研究的项目在最后几天没有变化。
您是否知道最近几天(从12/4/2019到15/4/2019)关于公共Maven仓库中杰克逊文物的变化?
非常感谢您阅读本文并为您提供帮助,如果您需要任何澄清,请告诉我。
亲切的问候。
编辑
这是Maven编译的输出 https://drive.google.com/open?id=1QYH_FCYZ7_iS08cKrUO-UFDZ1oyTktUS (我将其放入驱动器中是因为输出太大,而Stackoverlow不允许我将其添加到帖子中)
我注意到,在Maven中央存储库central.maven.org/maven2/org/codehaus/jackson/jackson-core-asl中,如果精确[1.9.12] [1.9.13]的两个版本都失败了未注明日期的。也许这就是原因吗?