Google app engine Appengine上的Gmail:NoSuchMethodError:javax.mail.internet.ParameterList.combineSegments
我正在使用XOAUTH2访问Appengine上的Gmail Imap。连接到imap并搜索邮件工作正常,但当我尝试访问Google app engine Appengine上的Gmail:NoSuchMethodError:javax.mail.internet.ParameterList.combineSegments,google-app-engine,smtp,gmail,imap,jakarta-mail,Google App Engine,Smtp,Gmail,Imap,Jakarta Mail,我正在使用XOAUTH2访问Appengine上的Gmail Imap。连接到imap并搜索邮件工作正常,但当我尝试访问GmailMessage的邮件内容时,我遇到了 java.lang.NoSuchMethodError: javax.mail.internet.ParameterList.combineSegments()V at com.sun.mail.imap.protocol.BODYSTRUCTURE.parseParameters(BODYSTRUCTURE.java:4
GmailMessage
的邮件内容时,我遇到了
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)
java.lang.NoSuchMethodError:javax.mail.internet.ParameterList.combineSegments()V
位于com.sun.mail.imap.protocol.BODYSTRUCTURE.parseParameters(BODYSTRUCTURE.java:404)
位于com.sun.mail.imap.protocol.BODYSTRUCTURE.(BODYSTRUCTURE.java:224)
将AppEngine上的mail与MailService一起使用时,不能将javax.mail.jar添加到类路径中,但在通过sockets API访问IMAP和SMTP时,需要在类路径中包含javax.mail.jar和gimaps.jar
我怀疑AppEngine SDK中重新打包的javax.mail.*类与标准java.mail.jar之间存在冲突。
最后,为了解决这个问题,我复制了ParameterList的源代码,并将其放入一个自行创建的“javax.mail.internet”包中,从而部分解决了这个问题
我正在寻找关于javax.mail类冲突的建议谷歌支持:
工程部意识到这一点,正在评估升级路径,但尚未确定。如果您现在通过上传1.5 javamail获得的解决方案有效,那么我将结束这个案例。在一天结束时,我将javax.mail的所有源代码添加到我的项目中,并用我的应用程序编译它们。因为类在类加载中优先于JAR。它起作用,但它不是一种干净或稳定的解决方案。