С января 2020 года maven переключил свое репо с HTTP на HTTPS. Для того, чтобы мой проект (работающий с Java 5 + maven 3.1.1) загрузил репозитории, которые я изменил в моем pom. xml репозитории, чтобы посмотреть: https://repo.maven.apache.org/maven2 Это работало нормально, и теперь maven пытается получить доступ к зависимостям из безопасного хранилища. Пытаясь построить / очистить мой проект, я столкнулся со следующими проблемами:
Проблема 1 Пытаясь очистить мой проект без каких-либо дополнительных аргументов, я получаю следующую ошибку: Не удалось передать артефакт орг. apache .maven.plugins: maven-clean-plugin: pom: 2.5 от / к центральному (https://repo.maven.apache.org/maven2): узел не аутентифицирован -> [Помощь 1]
Я попытался обойти ошибку, добавив следующие аргументы: mvn -Dmaven.wagon.http.ssl.insecure = true -Dmaven.wagon.http.ssl.allowall = true clean
Новая ошибка: Невозможно передать артефакт орг. apache .maven.plugins: maven-clean-plugin: pom: 2.5 от / к центральному (https://repo.maven.apache.org/maven2): удаленное соединение закрыло соединение во время рукопожатие: SSL-одноранговый узел некорректно завершил работу -> [Справка 1]
Дальнейшая попытка путем добавления следующего аргумента: -Dhttps.protocols = TLSv1.2, TLSv1.1 Resolves на новую ошибку:
Невозможно передать артефакт орг. apache .maven.plugins: maven-clean-plugin: pom: 2.5 from / to ce ntral (https://repo.maven.apache.org/maven2): TLSv1.2 -> [Help 1]
Issue 2 Я пытался использовать другой подход с использованием сертификата предоставлено из https://repo.maven.apache.org/maven2/ Я импортирую сертификат в хранилище доверенных сертификатов и попытался использовать его с помощью следующей команды maven:
mvn -Djavax. net .ssl.trustStore = C: \ PortableApps \ trust.jks -Djavax. net .ssl.trustStorePassword = pass -Djavax. net .ssl.keyStore = C: \ PortableApps \ trust.jks -Djavax. net .ssl.keyStoreType = jks -Djavax. net .ssl.keyStorePassword = pass clean
Ошибка такая же, как предыдущая снова Не удалось передать артефакт орг. apache .maven .plugins: maven-clean-plugin: pom: 2.5 от / к центральному (https://repo.maven.apache.org/maven2): узел не аутентифицирован -> [Помощь 1]
Я начинаю верить , что это не годится для работы с Java 5 из-за ограничений JVM. В качестве последнего решения я нахожу использование небезопасного репо http://insecure.repo1.maven.org/maven2/, но я хочу go сделать это как мой последний вариант. Любые дальнейшие предложения?
Примечание
- В другом проекте с Java 7 я смог решить все проблемы, используя последнюю версию Maven 3.6 .3
- Поскольку проект совместим только с Java 5, я ограничен в использовании maven версии до 3.1.1