Доступ к хранилищу по SSL на самом деле не проблема Maven (которая использует HttpClient под капотом и в конечных классах из пакета java.net
), это проблема чисто Java: сертификат удаленного хранилища должен быть доверенный, т. е. корневой сертификат CA для этого сертификата должен находиться в файле cacerts
, входящем в комплект JRE, или вам необходимо установить цепочку доверия вручную.
В конкретном случае https://m2proxy.atlassian.com/, сертификат был выдан DigiCert CA.
Странная часть заключается в том, что последние JDK (Java 5u15 или новее или Java 6u5 или новее, см. Идентификатор ошибки: 6647251 ) имеют корневой сертификат CA для DigiCert. Итак, с недавним JDK все должно работать (если у вас нет прокси, делающего какую-то чёрную магию, как в в этом выпуске ).
Если вы используете более старую версию JDK и не можете обновить ее, экспортируйте сертификат из своего браузера, используйте keytool
, чтобы добавить его в хранилище доверенных сертификатов, и настройте Java для использования этого хранилища доверенных сертификатов (используя javax.net.ssl.trustStore
и javax.net.ssl.trustStorePassword
системные свойства). Подробнее о том, как это сделать, см. Мини-руководство Maven и / или это сообщение в блоге .
Но самый простой способ - использовать недавний JDK.