我已将TeamCity电子邮件通知配置为使用安全连接SSL。所有参数 - 指定的host,port,login / pwd。相同的参数适用于SVN电子邮件通知,因此不是问题。 在连接测试期间,TeamCity说:
javax.mail.MessagingException: Could not connect to SMTP host: XXX, port: YYY;
nested exception is:
javax.net.ssl.SSLHandshakeException:
sun.security.validator.ValidatorException:
PKIX path building failed:
sun.security.provider.certpath.SunCertPathBuilderException:
unable to find valid certification path to requested target
我该怎么做才能解决此错误?
答案 0 :(得分:2)
问题是由错过证书引起的。以下是如何修复它的步骤:
1)从您的邮件服务器获取客户端证书。 Here是如何做到的指令。复制-----BEGIN CERTIFICATE-----
和-----END CERTIFICATE-----
之间的所有内容,并将其保存到 email.cer 文件中。页脚和页眉也应该被复制。
2)下载Portecle工具。
3)转到 TeamCity文件夹 \ jre \ bin并从那里运行:
java -jar D:\portecle\portecle.jar
4)在Portecle工具中打开 TeamCity文件夹 \ jre \ lib \ security \ cacerts中的密钥库。它会询问密码,默认为 changeit 。
5)导入 email.cer 并保存更改。
6)重新启动Team City服务器。