从Java访问gmail

我需要一个允许我使用Java在Gmail中进行电子邮件操作(例如发送/接收邮件)的库。

你见过g4j – 用于Java的GMail API吗?

GMailer API for Java(g4j)是一组API,允许Java程序员与GMail进行通信。 使用G4J程序员可以基于巨大的GMail存储制作基于Java的应用程序。

您可以使用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(); } } 

ref: 使用SMTPS发送电子邮件(例如Google GMail)(Javamail)

以前几个post已经解决了这个问题的变化:

  • 使用IMAP从GMail获取邮件到Java应用程序
  • 如何使用Gmail从Java应用程序发送电子邮件?

一般方法是通过JavaMail使用IMAP / SMTP。 常见问题解答甚至还有一个特殊的条目用于使用Gmail 。

看看GMail API for Java 。

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