2012-07-11 122 views
2

我一直在嘗試使用javamail api閱讀Gmail收件箱郵件。我在互聯網上找到了以下代碼。我試圖在Eclipse上運行它,但是它失敗並出現「無效憑證異常」。我在web-app的lib目錄中有mail.jar,activation.jar,imap.jar和其他jar文件。javamail api訪問Gmail收件箱郵件

任何想法爲什麼我收到此異常?謝謝。

javax.mail.AuthenticationFailedException: Invalid credentials n67if632335wep.219 
at com.sun.mail.imap.IMAPStore.protocolConnect(IMAPStore.java:665) 
at javax.mail.Service.connect(Service.java:295) 
at javax.mail.Service.connect(Service.java:176) 
at org.mb.mail.MailReader.main(MailReader.java:23) 


package org.mb.mail; 

import java.util.Properties; 

import javax.mail.Folder; 
import javax.mail.Message; 
import javax.mail.MessagingException; 
import javax.mail.NoSuchProviderException; 
import javax.mail.Session; 
import javax.mail.Store; 
import javax.mail.*; 

public class MailReader { 

public static void main(String args[]) { 
Properties props = System.getProperties(); 
props.setProperty("mail.store.protocol", "imaps"); 
try { 
Session session = Session.getDefaultInstance(props, null); 
Store store = session.getStore("imaps"); 
store.connect("imap.gmail.com", "<username>", "password"); 
System.out.println(store); 

Folder inbox = store.getFolder("Inbox"); 
inbox.open(Folder.READ_ONLY); 
Message messages[] = inbox.getMessages(); 
for(Message message:messages) { 
System.out.println(message); 

}

 } catch (NoSuchProviderException e) { 
      e.printStackTrace(); 
      System.exit(1); 
     } catch (MessagingException e) { 
      e.printStackTrace(); 
      System.exit(2); 
     } 

    } 

} 
+0

看起來您傳遞的是「密碼」作爲密碼,並且您的用戶名可能無效。這可能會解釋無效憑證異常。你真的有連接到系統的有效用戶名嗎? – 2012-07-11 19:03:12

回答