Сбой сборки Maven из-за ошибки в файле "maven-metadata-bintray-central.xml" - PullRequest
0 голосов
/ 03 октября 2019

Я строю проект, используя 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 Найдено"& nginx сообщение для перенаправления на HTTPS (https://jcenter.bintray.com/).

Вызывает ли Artifactory jcenter.bintray для получения сведений о библиотеке? Если это так, как мы можем настроить Artifactory на использование URL-адреса https или для пониманияhttp редирект?

1 Ответ

3 голосов
/ 05 октября 2019

Эта проблема не связана с Artifactory.

Это потому, что в файле pom была ссылка на http://jcenter.bintray.com.

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

Я не уверен, почему он не потерпел неудачу раньше. Я предполагаю, что недавно на сайте jcenter.bintray.com произошли изменения для перенаправления всех вызовов http на https с 302. Изменение URL-адреса bintray на https, например, удаление старых файлов в папке .m2 и восстановление разрешенныхвопрос.

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