Maven构建因“ maven-metadata-bintray-central.xml”文件中的错误而失败

问题描述 投票:0回答:1

我使用Maven构建了一个项目,该项目引用了Artifactory的工件。此构建设置没有问题,但现在每次从Artifactory存储库中获得新库时,我都会看到此错误。

Caused by: org.apache.maven.artifact.repository.metadata.RepositoryMetadataResolutionException: Unable to read local copy of metadata: Cannot read metadata from '/home/user/.m2/repository/com/cc-spring-hibernate/5.1-SNAPSHOT/maven-metadata-bintray-central.xml': end tag name </body> must match start tag name <hr> from line 5 (position: TEXT seen ...</center>\r\n</body>... @6:8)
    at org.apache.maven.artifact.repository.metadata.DefaultRepositoryMetadataManager.resolve(DefaultRepositoryMetadataManager.java:175)
    at org.apache.maven.artifact.transform.AbstractVersionTransformation.resolveVersion(AbstractVersionTransformation.java:65)
    at org.apache.maven.artifact.transform.SnapshotTransformation.transformForResolve(SnapshotTransformation.java:63)
    ... 23 more

当我检查了maven-metadata-bintray-central.xml文件时,发现它具有此内容。

<html>
<head><title>302 Found</title></head>
<body bgcolor="white">
<center><h1>302 Found</h1></center>
<hr><center>nginx</center>
</body>
</html>

[调查后,我发现这似乎是由于Artifactory调用http://jcenter.bintray.com/以获取依赖关系,但是HTTP调用返回“ 302 Found”和nginx消息以重定向到HTTPS(https://jcenter.bintray.com/)。

Artifactory是否正在调用jcenter.bintray以获取库的详细信息?如果是这种情况,我们如何配置Artifactory使用https URL或了解http重定向?

java maven artifactory bintray
1个回答
0
投票

此问题与Artifactory有关。 这是因为pom文件中引用了http://jcenter.bintray.com

<repository> <id>bintray-central</id> <name>bintray</name> <url>https://jcenter.bintray.com</url> </repository>

我不确定为什么它没有更早失败。我假设jcenter.bintray.com网站上发生了最近的更改,以将302的所有HTTP调用重定向到https。像这样将bintray URL更改为https,删除.m2文件夹中的旧文件并重建即可解决此问题。

<!-- Updated http url --> <repository> <id>bintray-central</id> <name>bintray</name> <url>https://jcenter.bintray.com</url> </repository>

© www.soinside.com 2019 - 2024. All rights reserved.