Я получаю указанные ниже ошибки при подключении к 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 Advanced Support
Также проблему можно решить обновлением версии Java 7. Но последняя доступная версия ( 7u80
) не решает проблему. Необходимо использовать обновление, поставляемое с Oracle Advanced Support (ранее известное как Java for Business).
Решение 3. Вместо этого используйте Java 8
Настройте так, $JAVA_HOME
чтобы он указывал на Java 8.
sbt -Dhttps.protocols=TLSv1.2 instal
-Dhttps.protocols=TLSv1.2
. Итак, вам нужно найти, как передавать параметры java в SBT.
В июне 2018 года в целях повышения безопасности и соответствия современным стандартам небезопасные протоколы TLS 1.0 и 1.1 больше не будут поддерживаться для SSL-подключений к Central. Это должно повлиять только на пользователей 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 8, изменив JAVA_HOME
переменную среды. Затем я мог запускать mvn install
и получать данные из центрального репозитория Maven.
Обратите внимание, что если вы используете IBM JDK, вам также может потребоваться установить
com.ibm.jsse2.overrideDefaultTLS=true
Используя jdk7-u221, мне нужно было установить расширение Java Cryptography Extension (JCE)