首页 > 解决方案 > 尝试从 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] **************************

标签: javaemailjenkinssmtpfilenotfoundexception

解决方案


推荐阅读