提前致谢
1)您可以使用 keytool 命令将 Maven 存储库的所有 CA 和中间证书添加到 Java 信任存储中。 你可以通过
来做到这一点
openssl s_client -showcerts -connect <SERVER>:443 </dev/null 2>/dev/null|openssl x509 -outform PEM >certificate.pem
这会将证书保存在名为 cert.pem 的本地文件中 现在您已将此证书添加到您的信任存储中 转换为 .der 格式
openssl x509 -outform der -in certificate.pem -out certificate.der
添加到信任存储。
keytool -import -alias your-alias -keystore cacerts -file certificate.der
2)如果您想绕过信任,您可以在运行 mvn 时使用以下属性。 -Dmaven.wagon.http.ssl.insecure=true
3)如果您计划绕过 Java Trsut 存储并希望使用自己的信任存储,您可以设置 MAVEN_OPTS 环境变量
MAVEN_OPTS="-Xmx512m -Djavax.net.ssl.trustStore=trust.jks \
-Djavax.net.ssl.trustStorePassword= \
-Djavax.net.ssl.keyStore=/home/directory/mycertificate.p12 \
-Djavax.net.ssl.keyStoreType=pkcs12 \
-Djavax.net.ssl.keyStorePassword=XXXXXX"
参考:
https://maven.apache.org/guides/mini/guide-repository-ssl.html
创建自己的 java 密钥存储并将其映射到默认值将是一项艰巨的任务。
拿到证书(Maven的公共证书)即可,然后按照 以下步骤如果服务器支持https,您可以使用openssl客户端或任何浏览器来获取公共数字证书。您可以单击在浏览器中查看证书,然后通过单击地址栏上最左侧的图标进行保存(带有 https 标记{必须标记或红色,因为证书不受信任}符号)
通过openSSL命令获取证书(我假设你在windows中默认没有openssl,所以最好按照浏览器的方法,否则下载一个SSL客户端来获取证书,如果你可以的话我可以给你工具名称找不到任何工具)。
获得证书后请按照以下步骤操作。
1)进入你的【Java安装路径】\jre\lib\security
2)(Windows) 使用“cmd”和 CTRL+SHIFT+ENTER 打开管理命令行
(请确保命令提示符下位于[Java安装路径]\jre\lib\security,否则必须将路径设置为系统 环境变量)
3)运行keytool导入证书:
.... in\keytool -import -trustcacerts -keystore cacerts -storepass changeit -noprompt -alias yourAliasName -file 小路