java - 尝试从 Jenkins 发送电子邮件报告时遇到异常
问题描述
我们正在尝试从 jenkins 工作中向开发人员发送硒测试报告。我们有 java 代码,它将解析报告 xml 并以表格格式发送值。但是在发送报告时,我们收到 IO 异常和 java.io.FileNotFoundException: C:\Program Files\Java\jdk1.8.0_181\jre\lib\javamail.address.map (系统找不到指定的文件。
We tried adding javax.mail.jar and these files javamail.providers, javamail.address.map, javamail.default.address.map,javamail.default.providers to JRE Path.But no success
Full logs:
[java] DEBUG: successfully loaded resource: /META-INF/javamail.default.address.map
[java] DEBUG: !anyLoaded
[java] DEBUG: not loading resource: /META-INF/javamail.address.map
[java] DEBUG: java.io.FileNotFoundException: C:\Program Files\Java\jdk1.8.0_181\jre\lib\javamail.address.map (The system cannot find the file specified)
[java] sendding messge ---- javax.mail.internet.MimeMessage@1bd4fdd
[java] DEBUG: getProvider() returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]
[java] DEBUG SMTP: useEhlo true, useAuth true
[java] USER ---> dev@gmail.com, Password ---> test123
[java] DEBUG SMTP: useEhlo true, useAuth true
[java]
[java] DEBUG: SMTPTransport trying to connect to host "smtp.gmail.com", port 465
[java]
[java] javax.mail.SendFailedException: Sending failed;
[java] nested exception is:
[java] class javax.mail.MessagingException: Could not connect to SMTP host: smtp.gmail.com, port: 465;
[java] nested exception is:
[java] java.io.IOException: Couldn't connect using "javax.net.ssl.SSLSocketFactory" socket factory to host, port: smtp.gmail.com, 465; Exception: java.lang.reflect.InvocationTargetException
[java] at javax.mail.Transport.send0(Transport.java:218)
[java] at javax.mail.Transport.send(Transport.java:80)
[java] at test.email.SeleniumEmailNotification.sendEmail(Unknown Source)
[java] at test.email.SeleniumEmailNotification.runExample(Unknown Source)
[java] at test.email.SeleniumEmailNotification.main(Unknown Source)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[java] at java.lang.reflect.Method.invoke(Method.java:498)
[java] at org.apache.tools.ant.taskdefs.ExecuteJava.run(ExecuteJava.java:221)
[java] at org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:154)
[java] at org.apache.tools.ant.taskdefs.Java.run(Java.java:832)
[java] at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:226)
[java] at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:135)
[java] at org.apache.tools.ant.taskdefs.Java.execute(Java.java:108)
[java] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[java] at java.lang.reflect.Method.invoke(Method.java:498)
[java] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
[java] at org.apache.tools.ant.Task.perform(Task.java:352)
[java] at org.apache.tools.ant.Target.execute(Target.java:437)
[java] at org.apache.tools.ant.Target.performTasks(Target.java:458)
[java] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1406)
[java] at org.apache.tools.ant.Project.executeTarget(Project.java:1377)
[java] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
[java] at org.apache.tools.ant.Project.executeTargets(Project.java:1261)
[java] at org.apache.tools.ant.Main.runBuild(Main.java:857)
[java] at org.apache.tools.ant.Main.startAnt(Main.java:236)
[java] at org.apache.tools.ant.launch.Launcher.run(Launcher.java:287)
[java] at org.apache.tools.ant.launch.Launcher.main(Launcher.java:112)
[java] message sent....
[java] **************************
解决方案
推荐阅读
- sql - 将 Crystal“如果以前”转换为 SQL
- c++ - 非会员获取方式
为命名空间中的自定义类工作 [C++17] - vue.js - 无法在 cellClick 上打开模式
- angular - 制作后如何使自定义字体不出现在根目录中
- sql-server - 当 200 个用户访问站点并同时调用一个商店导致 SQL Server Azure 死机时如何找到解决方案
- javascript - QuerySelector 没有显示我输入它要做什么 + 为什么 onClick 不能与 index.html 和 app.js 文件一起使用?
- .htaccess - 使用 htaccess 重定向域的正确语法是什么?
- c - 在c中使用标志?
- android - 用户登录时如何保护非消耗性应用内购买
- mysql - MySQL - 存储过程错误操作数应包含 1 列