Otrzymuję poniższe błędy podczas łączenia się z Maven Central / https://repo1.maven.org po 18 czerwca 2018 r.
Received fatal alert: protocol_version
lub
Received fatal alert: peer not authenticated
Otrzymuję poniższe błędy podczas łączenia się z Maven Central / https://repo1.maven.org po 18 czerwca 2018 r.
Received fatal alert: protocol_version
lub
Received fatal alert: peer not authenticated
Odpowiedzi:
Rozwiązanie 1: Skonfiguruj Javę 7
Konieczne jest włączenie protokołu TLS 1.2 z właściwością Java w linii poleceń
mvn -Dhttps.protocols=TLSv1.2 install
install
to tylko przykład celu
Ten sam błąd ant
można rozwiązać w ten sposób
java -Dhttps.protocols=TLSv1.2 -cp %ANT_HOME%/lib/ant-launcher.jar org.apache.tools.ant.launch.Launcher
Rozwiązanie 2: użyj języka Java 7 z Oracle Advanced Support
Problem można również rozwiązać, aktualizując wersję Java 7. Ale ostatnia dostępna wersja ( 7u80
) nie rozwiązuje problemu. Konieczne jest skorzystanie z aktualizacji dostarczonej z Oracle Advanced Support (wcześniej znanej jako Java for Business).
Rozwiązanie 3: Zamiast tego użyj Java 8
Skonfiguruj tak, $JAVA_HOME
aby wskazywała na Javę 8.
sbt -Dhttps.protocols=TLSv1.2 instal
ale nie działa
-Dhttps.protocols=TLSv1.2
. Musisz więc dowiedzieć się, jak przekazywać parametry Java w SBT.
W czerwcu 2018 r., Starając się podnieść poziom bezpieczeństwa i zachować zgodność z nowoczesnymi standardami, niezabezpieczone protokoły TLS 1.0 i 1.1 nie będą już obsługiwane dla połączeń SSL z centralą. Powinno to mieć wpływ tylko na użytkowników Java 6 (i Java 7), którzy również używają protokołu HTTPS do uzyskiwania dostępu do centrali, co według naszych wskaźników stanowi mniej niż 0,2% użytkowników.
Aby uzyskać więcej informacji i obejść, zobacz blog i często zadawane pytania tutaj: https://blog.sonatype.com/enhancing-ssl-security-and-http/2-support-for-central
Pomogło mi następujące polecenie (wykonanie na bash przed uruchomieniem mvn)
export MAVEN_OPTS=-Dhttps.protocols=TLSv1,TLSv1.1,TLSv1.2
Jak powiedział @ v.ladynev, działa z JDK 1.7
W przypadku Eclipse, aby móc wykonać operację „Uruchom jako” maven install
z parametrem wiersza poleceń TLS, wystarczy skonfigurować używany pakiet JDK.
Otwórz okno dialogowe poprzez Okno > Preferencje > Java > Zainstalowane środowiska JRE .
Następnie zaznacz ten, którego używasz (powinien to być JDK , a nie JRE ), kliknij Edytuj . W polu „Default VM arguments” wpisz wartość -Dhttps.protocols=TLSv1,TLSv1.1,TLSv1.2
. Jak pokazano niżej:
Wyczyść projekt (może opcjonalnie), a następnie ponownie uruchom plik maven install
.
Przepraszam, nie wiem, dlaczego otrzymujesz komunikat o błędzie. Jednak używam Java 7 i Windows 10, a rozwiązaniem dla mnie było tymczasowe użycie Java 8 poprzez zmianę JAVA_HOME
zmiennej środowiskowej. Wtedy mogłem uruchomić mvn install
i pobrać z Maven Central Repository.
Zauważ, że jeśli używasz IBM JDK, być może będziesz musiał to ustawić
com.ibm.jsse2.overrideDefaultTLS=true
Używając jdk7-u221, musiałem zainstalować rozszerzenie Java Cryptography Extension (JCE)