Der Zugriff auf ein Repository über SSL ist eigentlich kein Maven-Problem (das unter der Haube HttpClient verwendet und letztendlich Klassen aus dem java.net
-Paket), dies ist ein reines Java-Problem: Das Zertifikat des entfernten Repositorys muss vertrauenswürdig sein, d.h. das CA-Stammzertifikat für dieses Zertifikat muss in der Datei cacerts
gebündelt sein im JRE oder Sie müssen manuell eine Vertrauenskette herstellen.
Im speziellen Fall von https://m2proxy.atlassian.com/ wurde das Zertifikat von DigiCert CA ausgestellt.
Das Seltsame ist, dass neue JDKs (Java 5u15 oder später oder Java 6u5 oder später, siehe Bug ID:6647251) ein CA-Stammzertifikat für DigiCert haben. Daher sollte es mit einem neuen JDK einfach funktionieren (es sei denn, Sie haben einen Proxy, der irgendwelche Tricks anwendet, wie in diesem Issue).
Wenn Sie ein älteres JDK verwenden und nicht aktualisieren können, exportieren Sie das Zertifikat aus Ihrem Browser, verwenden Sie keytool
, um es einem Truststore hinzuzufügen, und richten Sie Java so ein, dass es diesen Truststore verwendet (unter Verwendung der Systemeigenschaften javax.net.ssl.trustStore
und javax.net.ssl.trustStorePassword
). Sehen Sie sich den Maven-Minileitfaden und/oder diesen Blog-Beitrag für weitere Details dazu an.
Aber der einfachste Weg wäre die Verwendung eines neuen JDKs.
0 Stimmen
Könnten Sie einige Informationen über Ihr Betriebssystem und Ihre Maven-Version geben?
0 Stimmen
Danke, ich habe dies zur Hauptfrage hinzugefügt.
0 Stimmen
Deine jdk-Version wäre hier nützlich :)