将Javamail文件夹备份到本地磁盘

将Javamail文件夹备份到本地磁盘,java,email,jakarta-mail,Java,Email,Jakarta Mail,我正在尝试使用JavaMail API将整个邮箱保存到磁盘上(本质上,执行完全备份)。我可以成功地将所有相关文件夹读取到内存中,然后断开与邮件服务器的连接。我不知道的是,如果需要,如何将文件夹和/或单个邮件实际存储在磁盘上 我试着四处搜索,找到了一个有趣的链接(如下),但我想不出来。有人对从哪里开始有什么建议吗?我很感激,谢谢 快速提示:我尝试使用一个包含文件夹类型的ArrayList的类(JavaMail类)并使其可序列化,但在尝试写入磁盘时仍引发了一个异常。我已经处理这个问题大约两天了,我

我正在尝试使用JavaMail API将整个邮箱保存到磁盘上(本质上,执行完全备份)。我可以成功地将所有相关文件夹读取到内存中,然后断开与邮件服务器的连接。我不知道的是,如果需要,如何将文件夹和/或单个邮件实际存储在磁盘上

我试着四处搜索,找到了一个有趣的链接(如下),但我想不出来。有人对从哪里开始有什么建议吗?我很感激,谢谢


快速提示:我尝试使用一个包含文件夹类型的ArrayList的类(JavaMail类)并使其可序列化,但在尝试写入磁盘时仍引发了一个异常。我已经处理这个问题大约两天了,我可以使用一些指针。谢谢!

您找到了常见问题解答,但错过了以下条目:

而且,正如您找到的FAQ条目所说,您不能仅仅序列化消息对象,更不用说文件夹对象了


如果这一切对您来说太复杂了,最简单的方法可能是获得一个在本地机器上运行的IMAP服务器,然后将消息从远程IMAP服务器复制到本地IMAP服务器。JavaMail FAQ已经发布了,稍微进行一点web搜索会发现更多。JavaMail还附带了一个演示程序(populate.java)用于复制文件夹。

您找到了常见问题,但错过了以下条目:

而且,正如您找到的FAQ条目所说,您不能仅仅序列化消息对象,更不用说文件夹对象了

如果这一切对您来说太复杂了,最简单的方法可能是获得一个在本地机器上运行的IMAP服务器,然后将消息从远程IMAP服务器复制到本地IMAP服务器。JavaMail FAQ已经发布了,稍微进行一点web搜索会发现更多。JavaMail还附带了一个演示程序(populate.java)用于复制文件夹