email - 当我尝试在 Jenkins 中发送电子邮件时失败
问题描述
我正在尝试在 Jenkins 中发送电子邮件。我正在做接下来的步骤:
你能帮我解决这个问题吗?
解决方案
看来您需要 gmail smtp 服务器的证书
请从http://notepad2.blogspot.com/2012/04/import-gmail-certificate-into-java.html (1)尝试以下步骤
从(1)复制:“
以下过程是将 gmail smtp 证书导入默认 Java 密钥库(取决于 Java 邮件应用程序,密钥库的位置可能会有所不同):
连接到 smtp.gmail.com:465 以在终端窗口中显示证书: 对于 Linux:
openssl s_client -connect smtp.gmail.com:465 对于 Mac OS:openssl s_client -connect smtp.gmail.com:465 对于 Windows 先安装 openssl
运行命令:
s_client -connect smtp.gmail.com:465
将“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”之间的行复制并保存到一个文件中,比如gmail.cert
将证书导入 java 密钥库(默认位置):
sudo keytool -import -alias smtp.gmail.com -keystore /path/to/keystore -file /Users/wilson/gmail.cert
对于 Windows:
keytool -import -alias smtp.gmail.com -keystore "%JAVA_HOME%/jre/lib/security/cacerts" -file C:\Users\wilson\gmail.cert
对于 Mac 操作系统:
sudo keytool -import -alias smtp.gmail.com -keystore /System/Library/Frameworks/JavaVM.framework//Versions/CurrentJDK/Home/lib/security/cacerts -file /Users/wilson/gmail.cert
对于 Linux:
sudo keytool -import -alias smtp.gmail.com -keystore $JAVA_HOME/jre/lib/security/cacerts -file /Users/wilson/gmail.cert
注意:您需要提供密码才能访问密钥库。默认 java 密钥库的密码是 changeit
当它询问“信任此证书?[否]:是”时回答是
注意:如果您的 java 邮件客户端应用程序使用自己的密钥库,则需要在 keytool 命令中更改应用程序的密钥库而不是 JVM 的密钥库的位置。"
推荐阅读
- python - Doc2Vec 和分类 - 结果很差
- r - 为 R 中的每个 ID 生成日期和时间序列
- python - pandas.read_csv() 可以在同一列中应用不同的日期格式!这是一个已知的错误吗?如何解决?
- javascript - TurboLinks 如何显示响应 HTML?
- bash - 如何从 launchctl 获取文件
- php - 正文中的 OnLoad 不适用于 wordpress?
- jenkins - Jenkins Groovy 脚本无法识别 Windows Drive
- mysql - 在 Eclipse 中找不到适合 jdbc:mysql//localhost:3306/Test 的驱动程序
- javascript - 将 ES6 箭头函数转换为 ES5
- windbg - 签署 DLL 会使 PDB 文件失效吗?