javamail:在imap邮件上设置自定义标志并使用自定义标志搜索邮件

是否可以使用java邮件在IMAP邮件消息上设置自定义标志而不覆盖现有标志? 例如,我需要在已处理的消息上设置一个“已处理”标志,而不将其状态更改为SEEN / DELETED或没有邮件客户端干扰此“已处理”标志。

然后我需要找到所有没有“已处理”标志的邮件并处理它们,之后它们也被标记为“已处理”。

谢谢!

Flags processedFlag = new Flags("processed"); folder.setFlags(msgs, processedFlag, true); // or msg.setFlags(processedFlag, true); 

并非所有IMAP服务器都支持这些“用户标志”,但大多数都会支持。 要查找没有此标志的消息:

 Message[] msgs = folder.search(new FlagTerm(processedFlag, false));