public class ConnectGmail {
public static void main(String args[]) throws Exception {
PasswordAuthentication authentication;
Properties props = System.getProperties();
props.setProperty("mail.store.protocol", "imap");
Session session = Session.getDefaultInstance(props);
Store store = session.getStore("imap");
try {
store.connect(host , user , "password");
} catch (Exception e) {
e.printStackTrace();
}
}
}
得到了这个错误..我几乎尝试了所有的协议
javax.mail.MessagingException: Connection refused: connect;
nested exception is:
java.net.ConnectException: Connection refused: connect
at com.sun.mail.imap.IMAPStore.protocolConnect(IMAPStore.java:571)
at javax.mail.Service.connect(Service.java:288)
at javax.mail.Service.connect(Service.java:169)
at ConnectGmail.main(ConnectGmail.java:26)
任何帮助??
答案 0 :(得分:1)
您需要启用邮件身份验证才能使用它:
将属性mail.smtp.auth
设置为true
以进行身份验证。
如果为true,请尝试使用AUTH命令对用户进行身份验证。默认为false。
@see包com.sun.mail.smtp的Javadoc
答案 1 :(得分:0)
您的ISP是否允许您连接到该端口?
你需要通过代理吗?
尝试使用简单的telnet <host> <port>
命令打开与正确端口的邮件服务器的直接连接。如果你不能,那么你的连接不会失败,那是你的ISP不允许它。如果可以,请检查您是否使用特定代理选项并将其添加到程序中。