Я получаю следующие ошибки при подключении к Maven Central/https://repo1.maven.org после 18 июня 2018 года.
Received fatal alert: protocol_version
или же
Received fatal alert: peer not authenticated
Я получаю следующие ошибки при подключении к Maven Central/https://repo1.maven.org после 18 июня 2018 года.
Received fatal alert: protocol_version
или же
Received fatal alert: peer not authenticated
Решение 1: настроить Java 7
Необходимо включить протокол TLS 1.2 со свойством Java в командной строке
mvn -Dhttps.protocols=TLSv1.2 install
install
это просто пример цели
Та же ошибка для ant
может быть решена таким способом
java -Dhttps.protocols=TLSv1.2 -cp %ANT_HOME%/lib/ant-launcher.jar org.apache.tools.ant.launch.Launcher
Решение 2: используйте Java 7 с расширенной поддержкой Oracle
Также проблему можно решить, обновив версию Java 7. Но последняя доступная версия (7u80
) не решает проблему. Необходимо использовать обновление, предоставляемое с Oracle Advanced Support (ранее известной как Java для бизнеса).
Решение 3: используйте Java 8 вместо
Сконфигурируйте $JAVA_HOME
для указания на Java 8.
В июне 2018 года в целях повышения безопасности и соответствия современным стандартам небезопасные протоколы TLS 1.0 и 1.1 больше не будут поддерживаться для соединений SSL с центральным соединением. Это должно повлиять только на пользователей Java 6 (и Java 7), которые также используют https для доступа к центральному, что по нашим показателям составляет менее 0,2% пользователей.
Для получения дополнительной информации и обходных путей см. Блог и часто задаваемые вопросы здесь: https://blog.sonatype.com/enhancing-ssl-security-and-http/2-support-for-central
Следующая команда помогла мне (выполняя команду bash перед запуском mvn)
export MAVEN_OPTS=-Dhttps.protocols=TLSv1,TLSv1.1,TLSv1.2
Как сказал @v.ladynev, он работает с JDK 1.7
В Eclipse, чтобы иметь возможность выполнить "Запуск от имени" maven install
с параметром командной строки TLS, просто настройте JDK, который вы используете.
Откройте диалоговое окно через окно > Настройки > Java > Установленные JRE.
Затем выделите тот, который вы используете (должен быть JDK, а не JRE), нажмите Изменить. В поле "Параметры виртуальной машины по умолчанию" заполните значение -Dhttps.protocols=TLSv1,TLSv1.1,TLSv1.2
. Как показано ниже:
Очистите проект (возможно, не обязательно), затем снова запустите maven install
.
Извините, я не знаю, почему вы получаете сообщение об ошибке. Тем не менее, я использую Java 7 и Windows 10, и я JAVA_HOME
временно использовать Java 8, изменив переменную среды JAVA_HOME
. Затем я мог запустить mvn install
и получить из Центрального репозитория Maven.
Обратите внимание: если вы используете IBM JDK, вам также может потребоваться установить
com.ibm.jsse2.overrideDefaultTLS=true