当使用mvn打包时,会报错:
PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target -> [Help 1]
问题原因是没有导入中心仓域名的证书,ssl证书校验不通过,就会报错误。
此时有两种方式处理:
配置ssl证书,见文档;
配置忽略ssl证书,见下文;
如何配置忽略ssl校验:
示例:
mvn -X clean install -Dmaven.resolver.transport=wagon -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.validity.dates=true
参数解析:
-Dmaven.wagon.http.ssl.insecure=true:启用对ssl验证的宽松检查。
-Dmaven.wagon.http.ssl.allowall=true:允许使用服务的带hostname 的X.509格式的证书。如果讲参数改为false,那么就会使用长默认的浏览器证书检查。
-Dmaven.wagon.http.ssl.ignore.validity.dates=true:忽略整数中日期的检查。
Dmaven.resolver.transport=wagon:在Maven3.9.0或者更高的版本中,默认的http调用已经切换到了Apache HttpClient 4。需要切换成旧的wagon组件,否则前面的三个参数不会生效。