IMAP 命令的等效 java 代码

Equivalent java code for IMAP command

我们正在使用 Godaddy 电子邮件服务器。我们正在尝试使用 IMAP 协议获取电子邮件。以下是我的示例 IMAP 命令

a select inbox
a UID SEARCH FROM "user1@server.com"

上面命令的结果越来越好,如下所示

 * SEARCH 501 505 342 229 191
a OK SEARCH done.

如果我为上述命令编写等效的 Java 代码,我得到的结果是空的。以下是 Java 代码。

IMAPFolder inbox = store.getFolder("INBOX");
SearchTerm fromTerm = new FromTerm(new InternetAddress("user1@server.com"));
Message[] messages = inbox.search(fromTerm);

上面 Java 代码生成的 IMAP 命令是

a SEARCH FROM user1@server.com ALL

但是上面 java 生成的命令中缺少 UID,所以我得到的结果是空的。使用 Java

时如何包含 UID

谢谢

SEARCH 命令中的 UID 标记指示应返回 UID 而不是消息序列号。由于 JavaMail 主要使用消息序列号,因此它不支持 UID SEARCH。它使用返回的消息序列号映射到相应的消息对象。尽管如此,消息应该 "found" 独立于是否返回它们的 UID 或它们的消息序列号。如果服务器仅返回 UID SEARCH 的结果,则服务器已损坏,您应该将此服务器错误报告给 GoDaddy。