解决了!根据多部分MIME规范,看起来部分的顺序很重要。应按从低保真到高保真的顺序添加它们。因此,GMail似乎遵循规范并使用了最后一部分。就我而言,我有HTML,文本。我只是将订单交换为文本,HTML和Gmail正确呈现了该订单…
即
MimeBodyPart textPart = new MimeBodyPart();
textPart.setText(text, "utf-8");
MimeBodyPart htmlPart = new MimeBodyPart();
htmlPart.setContent(html, "text/html; charset=utf-8");
multiPart.addBodyPart(textPart); // <-- first
multiPart.addBodyPart(htmlPart); // <-- second
message.setContent(multiPart);
谢谢您的帮助!