简体   繁体   English

JavaMail smtp.gmail.com ANT与Eclipse

[英]JavaMail smtp.gmail.com ANT vs Eclipse

I have a very frustrating issue with code that's trying to send an email through JavaMail via gmail. 我在尝试通过gmail通过JavaMail发送电子邮件的代码中遇到了一个非常令人沮丧的问题。 My code works when run from Eclipse, but when I run through Ant it fails to connect with a "Could not connect to SMTP host, reponse -1" error. 从Eclipse运行时,我的代码可以运行,但是通过Ant运行时,它无法连接并显示“无法连接到SMTP主机,响应-1”错误。

I'm using the same JRE's in both Eclipse and Ant and don't see anything from a classpath perspective that is different. 我在Eclipse和Ant中都使用了相同的JRE,从类路径的角度看,没有发现任何不同。

The JavaMail debug logs are below - first the successful run from within Eclipse; JavaMail调试日志如下-首先在Eclipse中成功运行;

DEBUG: JavaMail version 1.4.2
DEBUG: successfully loaded resource: /META-INF/javamail.default.providers
DEBUG: Tables of loaded providers
DEBUG: Providers Listed By Class Name: {com.sun.mail.smtp.SMTPSSLTransport=javax.mail.Provider[TRANSPORT,smtps,com.sun.mail.smtp.SMTPSSLTransport,Sun Microsystems, Inc], com.sun.mail.smtp.SMTPTransport=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc], com.sun.mail.imap.IMAPSSLStore=javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Sun Microsystems, Inc], com.sun.mail.pop3.POP3SSLStore=javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Sun Microsystems, Inc], com.sun.mail.imap.IMAPStore=javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Sun Microsystems, Inc], com.sun.mail.pop3.POP3Store=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Sun Microsystems, Inc]}
DEBUG: Providers Listed By Protocol: {imaps=javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Sun Microsystems, Inc], imap=javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Sun Microsystems, Inc], smtps=javax.mail.Provider[TRANSPORT,smtps,com.sun.mail.smtp.SMTPSSLTransport,Sun Microsystems, Inc], pop3=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Sun Microsystems, Inc], pop3s=javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Sun Microsystems, Inc], smtp=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]}
DEBUG: successfully loaded resource: /META-INF/javamail.default.address.map
Email Recipients = <email removed>
DEBUG: getProvider() returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]
DEBUG SMTP: useEhlo true, useAuth true
DEBUG SMTP: useEhlo true, useAuth true
DEBUG SMTP: trying to connect to host "smtp.gmail.com", port 465, isSSL false
220 smtp.gmail.com ESMTP b14sm9639869itd.15 - gsmtp
DEBUG SMTP: connected to host "smtp.gmail.com", port: 465

...and now the failed run from Ant; ...现在从Ant失败了;

   [java] Emailing skip report...
     [java] DEBUG: JavaMail version 1.4.2
     [java] DEBUG: successfully loaded resource: /META-INF/javamail.default.providers
     [java] DEBUG: Tables of loaded providers
     [java] DEBUG: Providers Listed By Class Name: {com.sun.mail.smtp.SMTPSSLTransport=javax.mail.Provider[TRANSPORT,smtps,com.sun.mail.smtp.SMTPSSLTransport,Sun Microsystems, Inc], com.sun.mail.smtp.SMTPTransport=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc], com.sun.mail.imap.IMAPSSLStore=javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Sun Microsystems, Inc], com.sun.mail.pop3.POP3SSLStore=javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Sun Microsystems, Inc], com.sun.mail.imap.IMAPStore=javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Sun Microsystems, Inc], com.sun.mail.pop3.POP3Store=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Sun Microsystems, Inc]}
     [java] DEBUG: Providers Listed By Protocol: {imaps=javax.mail.Provider[STORE,imaps,com.sun.mail.imap.IMAPSSLStore,Sun Microsystems, Inc], imap=javax.mail.Provider[STORE,imap,com.sun.mail.imap.IMAPStore,Sun Microsystems, Inc], smtps=javax.mail.Provider[TRANSPORT,smtps,com.sun.mail.smtp.SMTPSSLTransport,Sun Microsystems, Inc], pop3=javax.mail.Provider[STORE,pop3,com.sun.mail.pop3.POP3Store,Sun Microsystems, Inc], pop3s=javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Sun Microsystems, Inc], smtp=javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]}
     [java] DEBUG: successfully loaded resource: /META-INF/javamail.default.address.map
     [java] Email Recipients = <email address hidden>
     [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] DEBUG SMTP: useEhlo true, useAuth true
     [java] DEBUG SMTP: trying to connect to host "smtp.gmail.com", port 465, isSSL false
     [java] javax.mail.MessagingException: Could not connect to SMTP host: smtp.gmail.com, port: 465, response: -1
     [java]     at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1533)
     [java]     at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:453)
     [java]     at javax.mail.Service.connect(Service.java:313)
     [java]     at javax.mail.Service.connect(Service.java:172)
     [java]     at javax.mail.Service.connect(Service.java:121)
     [java]     at javax.mail.Transport.send0(Transport.java:190)
     [java]     at javax.mail.Transport.send(Transport.java:120)
     [java]     at com.diona.skipped.record.EmailReport.sendReportEmail(Unknown Source)
     [java]     at com.diona.skipped.record.SkipAlert.processLogs(Unknown DEBUG SMTP: EOF: [EOF]
     [java] DEBUG SMTP: could not connect to host "smtp.gmail.com", port: 465, response: -1

Any ideas? 有任何想法吗?

Chris 克里斯

Are you running from ant on the same machine as when you run from Eclipse? 您是否在与从Eclipse运行时在同一台机器上从ant运行? The JavaMail FAQ has connection debugging tips . JavaMail FAQ具有连接调试技巧 Also, you're using a very old version of JavaMail; 另外,您使用的JavaMail版本非常旧。 upgrade if you can to the current version 1.5.5. 如果可以,请升级到当前版本1.5.5。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM