Я отримую наведені нижче помилки під час підключення до 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 (раніше відомою як 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 для доступу до центрального, що за нашими показниками становить менше, ніж 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 ), натисніть на Редагувати . У полі "Аргументи VM за замовчуванням" заповніть значення -Dhttps.protocols=TLSv1,TLSv1.1,TLSv1.2
. Як показано нижче:
Очистіть проект (можливо, необов’язково), а потім повторно запустіть a maven install
.
Вибачте, я не знаю, чому ви отримуєте повідомлення про помилку. Однак я використовую Java 7 та Windows 10, і для мене було рішення тимчасово використовувати Java 8, змінивши JAVA_HOME
змінну середовища. Тоді я міг запустити mvn install
та отримати з центрального сховища Maven.
Зауважте, що якщо ви використовуєте IBM JDK, вам, можливо, доведеться встановити
com.ibm.jsse2.overrideDefaultTLS=true
Використовуючи jdk7-u221, мені потрібно було встановити розширення криптографії Java (JCE)