С января 2020 года maven переключил свое репо с HTTP на HTTPS. Чтобы мой проект (работающий с Java 5 + maven 3.1.1) загружал репозитории, я изменил в своем pom.xml репозитории: https://repo.maven.apache.org/maven2 Это сработало нормально, и теперь maven пытается получить доступ к зависимостям из безопасного репозитория. Пытаясь построить/очистить мой проект, я столкнулся со следующими проблемами:
Проблема 1 При попытке mvn очистить мой проект без каких-либо дополнительных аргументов я получаю следующую ошибку: Не удалось передать артефакт org.apache.maven.plugins:maven-clean-plugin:pom:2.5 from/ к центральному (https://repo.maven.apache.org/maven2): одноранговый не аутентифицирован -> [Справка 1]
Я попытался обойти эту ошибку, добавив следующие аргументы: mvn -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true clean
Новая ошибка: Не удалось передать артефакт org.apache.maven.plugins:maven-clean-plugin:pom:2.5 из/в центральный сервер (https://repo.maven.apache.org/maven2).): соединение с удаленным хостом закрыто во время рукопожатия: одноранговый узел SSL закрыт неправильно -> [Справка 1]
Дальнейшая попытка, добавив также следующий аргумент: -Dhttps.protocols=TLSv1.2,TLSv1.1 Устраняет новую ошибку:
Не удалось передать артефакт org.apache.maven.plugins:maven-clean-plugin:pom:2.5 из/в хранилище (https://repo.maven.apache.org/maven2): TLSv1.2 -> [Справка 1]
Проблема 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=пройти очистку
Ошибка такая же, как и предыдущая, снова Не удалось передать артефакт org.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/, но я хочу сделать это как самый последний вариант. Любые дополнительные предложения?
Примечание
- В другом проекте с Java 7 мне удалось решить все проблемы, используя последнюю версию maven 3.6.3.
- Поскольку проект совместим только с Java 5, я ограничен в использовании версии maven до 3.1.1.
target to JDK 5
..? и я настоятельно рекомендую использовать соединение https..... - person khmarbaise   schedule 29.01.2020