Java 邮件:电子邮件中未显示内嵌图片

Java Mail: Inline Image is not shown in email

我正在尝试像这样添加内联图像:
静态文件夹位置:resources->static

MimeMessagePreparator messagePreparator = mimeMessage -> {
                MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage, true);
                messageHelper.setTo(recipientList);
                messageHelper.setFrom(fromEmail);
                messageHelper.setSubject(emailInfo.getSubject());
                //ClassPathResource image = new ClassPathResource("static/pin.png");
                FileSystemResource image = new FileSystemResource(new File("static/pin.png"));
    
    
               messageHelper.addInline("pin_image",image);
    
                messageHelper.setText(body, true);
    
            };
            sendMail(messagePreparator, emailInfo);

编辑:百里香相关部分:

    <img src="cid:pin_image" alt="location" width="25" height="25" border="0"
style="display: block; font-family: Arial; color: #666666; font-size: 14px; width: 25px; height: 25px;">

电子邮件正文:


电子邮件正文中的最后一张图片是我设置 pin_image 的位置。 但是我的电子邮件中没有内嵌图片!我正在使用 thymeleaf 模板,我在其中设置 contentId pin_image 就像在 java 代码中一样。我做错了什么?

我只是改变了这两行的顺序就解决了:

 messageHelper.addInline("pin_image",image);
 messageHelper.setText(body, true);

我想,当 HTML 尚未提供时,我正试图创建一个 contentId。这就是我们面临这个问题的原因。

P.S:我的整个 HTML 都在 body 变量中,这是我的模板