从Java访问Gmail [已关闭]

nr7wwzry  于 2023-05-05  发布在  Java
关注(0)|答案(5)|浏览(156)

就目前而言,这个问题并不适合我们的Q&A格式。我们希望答案能得到事实、参考资料或专业知识的支持,但这个问题可能会引发辩论、争论、民意调查或广泛的讨论。如果你觉得这个问题可以改进,并可能重新开放,visit the help center的指导。
11年前关闭。
我需要一个库,让我做电子邮件操作(例如发送/接收邮件)在Gmail中使用Java。

dldeef67

dldeef671#

你看过g4j - GMail API for Java吗?
GMailer API for Java(g4j)是一套允许Java程序员与GMail通信的API。使用G4J,程序员可以制作基于Java的应用程序,这些应用程序基于GMail的巨大存储空间。

uidvcgyl

uidvcgyl2#

锁定,本次有disputes about this answer’s content正在解析。它目前不接受新的交互。

你可以使用Javamail来实现。要记住的是,Gmail使用SMTPS而不是SMTP。

import javax.mail.*;
import javax.mail.internet.*;

import java.util.Properties;

public class SimpleSSLMail {

    private static final String SMTP_HOST_NAME = "smtp.gmail.com";
    private static final int SMTP_HOST_PORT = 465;
    private static final String SMTP_AUTH_USER = "myaccount@gmail.com";
    private static final String SMTP_AUTH_PWD  = "mypwd";

    public static void main(String[] args) throws Exception{
       new SimpleSSLMail().test();
    }

    public void test() throws Exception{
        Properties props = new Properties();

        props.put("mail.transport.protocol", "smtps");
        props.put("mail.smtps.host", SMTP_HOST_NAME);
        props.put("mail.smtps.auth", "true");
        // props.put("mail.smtps.quitwait", "false");

        Session mailSession = Session.getDefaultInstance(props);
        mailSession.setDebug(true);
        Transport transport = mailSession.getTransport();

        MimeMessage message = new MimeMessage(mailSession);
        message.setSubject("Testing SMTP-SSL");
        message.setContent("This is a test", "text/plain");

        message.addRecipient(Message.RecipientType.TO,
             new InternetAddress("elvis@presley.org"));

        transport.connect
          (SMTP_HOST_NAME, SMTP_HOST_PORT, SMTP_AUTH_USER, SMTP_AUTH_PWD);

        transport.sendMessage(message,
            message.getRecipients(Message.RecipientType.TO));
        transport.close();
    }
}
kmynzznz

kmynzznz3#

这个问题的变化已经在以前的几篇文章中得到了解决:

一般的方法是通过JavaMail使用IMAP/SMTP。FAQ甚至有一个特殊的入口用于使用Gmail。

fgw7neuy

fgw7neuy5#

首先,配置您的Gmail帐户以接受POP3访问。然后,只需使用Javamail访问您的邮件帐户!

相关问题