我尝试在Jenkins/Hudson上配置我的电子邮件,但不断收到错误:
java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be
non-empty
我已经在网上看到了大量关于这个错误的信息,但我还没有得到任何有用的信息。我在Fedora Linux (不是OpenJDK)上使用Sun的JDK。
下面是我尝试过的一些方法。我试着听从这个post的建议,但是把cacerts从Windows复制到我的托管Jenkins的Fedora box上并不起作用。当我试图将this guide配置为我的SMTP服务器时,我尝试了一下Gmail,但它也不起作用。我还尝试手动下载和移动这些cacert文件,并使用this guide上的各种命令将它们移动到我的Java文件夹中。
我对任何建议都持开放态度,因为我现在卡住了。我已经让它在Windows Hudson服务器上工作了,但我在Linux上遇到了困难。
发布于 2015-06-08 08:54:03
这解决了我在Ubuntu上的问题:
sudo /var/lib/dpkg/info/ca-certificates-java.postinst configure
(点击此处:https://bugs.launchpad.net/ubuntu/+source/ca-certificates-java/+bug/1396760)
ca-certificates-java
不是Oracle JDK/JRE中的依赖项,因此必须显式安装它。
发布于 2014-08-08 01:08:48
EJP基本上回答了这个问题(我意识到这个问题有一个公认的答案),但我只是处理了这个边缘情况的问题,并希望将我的解决方案永垂不朽。
我在一个托管的Jira服务器上遇到了InvalidAlgorithmParameterException
错误,该服务器是我之前设置的仅用于SSL访问的服务器。问题是我以PKCS#12格式设置了我的密钥库,但是我的信任库是JKS格式的。
在我的例子中,我编辑了我的server.xml
文件以指定PKCS的keystoreType,但我没有指定truststoreType,所以它缺省为keystoreType。显式地将truststoreType指定为JKS为我解决了这个问题。
发布于 2013-03-14 20:59:47
在Ubuntu 12.10 (Quantal Quetzal)或更高版本中,证书保存在ca-certificates-java包中。无论您使用的是什么-Djavax.net.ssl.trustStore=/etc/ssl/certs/java/cacerts
,使用JDK都可以获取它们。
https://stackoverflow.com/questions/6784463
复制相似问题