我使用XOAUTH2訪問Appengine上的Gmail Imap。連接到IMAP和搜索信息工作得很好,但是當我嘗試訪問的GmailMessage
消息內容,我碰上Appengine上的Gmail:NoSuchMethodError:javax.mail.internet.ParameterList.combineSegments
java.lang.NoSuchMethodError: javax.mail.internet.ParameterList.combineSegments()V
at com.sun.mail.imap.protocol.BODYSTRUCTURE.parseParameters(BODYSTRUCTURE.java:404)
at com.sun.mail.imap.protocol.BODYSTRUCTURE.<init>(BODYSTRUCTURE.java:224)
當AppEngine上使用電子郵件與MailService的,你不能添加javax.mail .jar添加到類路徑中,但是當通過套接字API訪問IMAP和SMTP時,需要在類路徑中包含javax.mail.jar和gimaps.jar。
我懷疑AppEngine SDK中的重新打包的javax.mail。*類與標準java.mail.jar之間存在衝突。 最後,爲了解決這個問題,我複製了ParameterList的源代碼並將其放入一個自創的'javax.mail.internet'包中,並且部分解決了這個問題。
我期待的意見上衝突javax.mail類
在一天結束時,我將javax.mail的所有源添加到我的項目中,並使用我的應用程序編譯它們。由於類在課堂加載中優先於罐子。它的工作原理,但它不是一個乾淨或穩定的解決方案。 – koma