Repolode
bbottema

bbottema/simple-java-mail

基于 Jakarta Mail 封装的 Java 邮件库,通过简洁的构建器 API 生成并经 SMTP 发送标准 MIME 邮件。

Star
1,293
Fork
275
未关闭 Issue
18
最近提交
昨天

这是什么?

Simple Java Mail 是一个用于构建和发送邮件的 Java 库。它通过链式构建器 API 生成格式规范的 MIME 邮件,支持纯文本与 HTML 双版本、内嵌图片、附件、日历内容和自定义邮件头。默认收件人、强制覆盖项、退信地址、邮件大小上限等共用规则可以在一个可复用的 Mailer 实例上统一配置,而不必在每处调用时重复设置。

库内处理传输与安全相关事务,包括 TLS 和 SMTPS、证书校验、OAuth2 令牌、邮件头注入防护、DKIM 签名和 S/MIME。它还提供同步与异步发送、批量发送、连接池和 SMTP 集群,并支持连接测试和邮件校验等诊断功能。底层基于 Jakarta Mail 与 Angus Mail,因此仍可使用自定义 Session 或原生 Jakarta Mail 属性。

可选模块提供 DKIM、S/MIME、批量投递、带认证的 SOCKS 代理、Outlook .msg 转换、Spring 配置、命令行发送以及 OSGi/Karaf 支持。项目面向 Java 8 及以上版本,并发布在 Maven Central。

核心功能

  • 01生成包含纯文本与 HTML 双版本、内嵌图片和附件的 MIME 邮件。
  • 02在可复用的 Mailer 上统一配置默认值与强制覆盖项。
  • 03支持 TLS/SMTPS、OAuth2 令牌、DKIM 签名和 S/MIME。
  • 04提供连接测试与邮件校验,便于排查发送问题。
  • 05可在 Email、MimeMessage 和 EML 格式之间转换。

适用场景

  • 在 Java 后端发送交易类或通知类邮件。
  • 为 Java 应用的外发邮件添加 DKIM 或 S/MIME 签名。
  • 通过 Spring 模块将邮件发送集成到 Spring Boot 服务中。
  • 利用连接池或 SMTP 集群进行批量邮件发送。

快速上手

  1. 1

    在项目中添加核心 Maven 依赖

    <dependency> <groupId>org.simplejavamail</groupId> <artifactId>simple-java-mail</artifactId> <version>9.3.9</version> </dependency>
  2. 2

    或者改为添加核心 Gradle 依赖

    implementation 'org.simplejavamail:simple-java-mail:9.3.9'
  3. 3

    构建 Email 并通过为你的 SMTP 服务器配置的 Mailer 发送

使用前须知

  • 需要 Java 8 及以上运行环境,并需要可用的 SMTP 服务器才能发送邮件。

标签

#java#email#smtp#jakarta-mail#mime#dkim#smime#spring#batch-processing#builder-api

常见问题

simple-java-mail 是什么?
基于 Jakarta Mail 封装的 Java 邮件库,通过简洁的构建器 API 生成并经 SMTP 发送标准 MIME 邮件。 Simple Java Mail 是一个用于构建和发送邮件的 Java 库。它通过链式构建器 API 生成格式规范的 MIME 邮件,支持纯文本与 HTML 双版本、内嵌图片、附件、日历内容和自定义邮件头。默认收件人、强制覆盖项、退信地址、邮件大小上限等共用规则可以在一个可复用的 Mailer 实例上统一配置,而不必在每处调用时重复设置。
simple-java-mail 可以免费使用吗?用的什么许可证?
simple-java-mail 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
simple-java-mail 还在维护吗?
活跃维护中。simple-java-mail 最近一次提交是在 2026年11月6日。
simple-java-mail 适合用来做什么?
在 Java 后端发送交易类或通知类邮件。 为 Java 应用的外发邮件添加 DKIM 或 S/MIME 签名。 通过 Spring 模块将邮件发送集成到 Spring Boot 服务中。 利用连接池或 SMTP 集群进行批量邮件发送。
simple-java-mail 怎么安装和运行?
在项目中添加核心 Maven 依赖: <dependency> <groupId>org.simplejavamail</groupId> <artifactId>simple-java-mail</artifactId> <version>9.3.9</version> </dependency> 或者改为添加核心 Gradle 依赖: implementation 'org.simplejavamail:simple-java-mail:9.3.9' 构建 Email 并通过为你的 SMTP 服务器配置的 Mailer 发送
在哪里获取 simple-java-mail?
源代码和安装说明在 GitHub 上:https://github.com/bbottema/simple-java-mail

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目