【发布时间】:2016-09-30 09:35:28
【问题描述】:
不得不再次询问。有人认为它是 duplicate question 并已回答并将其从列表中删除。
我正在使用带有 windows 的 maven (mvn) 批处理命令(不是带有 eclipse 的 m2e)来运行全新安装或解决依赖关系。有时,当 pom.xml 更改时,需要从我们的 nexus 服务器下载工件。 这曾经对我有用很长时间。
但现在连接到 nexus 服务器(https,服务器使用公司拥有的证书)失败,并出现“java.security.InvalidAlgorithmParameterException: trustAnchors 参数必须为非空” 我知道,我更改了 Java 版本。但我很确定我维护 cacerts 密钥库的方式与以前版本相同。 (至少我比较了两个证书中的指纹;它们是相同的)。
运行命令时 "mvn -s -Djavax.net.debug=all -Djava.net.ssl.trustStore="C:/Programme/Java/jre1.8.0_102/lib/security/cacerts" -Djavax.net.ssl。 trustStorePassword=changeit dependency:resolve”,ssl-trace 说:
keyStore is :
keyStore type is : jks
keyStore provider is :
init keystore
init keymanager of type SunX509
trustStore is: No File Available, using empty keystore.
trustStore type is : jks
trustStore provider is :
init truststore
即使在命令中指定了keystore的路径和密码,在ssl trace中的回答还是找不到。
我不知道我可能会做出什么改变来解决这个问题。我更改了 Windows PATH 语句,但这与前面描述的命令无关。 任何提示表示赞赏
【问题讨论】: