天天看點

java mail 包說明

  1. javax mail api

    該包隻有接口,沒有實作類,不能單獨運作。

    maven倉庫坐标及版本:

    <!-- https://mvnrepository.com/artifact/javax.mail/javax.mail-api -->

    <dependency>

        <groupId>javax.mail</groupId>

        <artifactId>javax.mail-api</artifactId>

        <version>1.6.2</version>

    </dependency>

    1.4.4-1.4.7,1.5.0-1.5.6,1.6.0-1.6.2:為老版本mail api,已經過時停止。

  2. jakarta mail api

    該包隻有接口,沒有實作類,不能單獨運作。

    maven倉庫坐标及版本:

    <!-- https://mvnrepository.com/artifact/jakarta.mail/jakarta.mail-api -->

    <dependency>

        <groupId>jakarta.mail</groupId>

        <artifactId>jakarta.mail-api</artifactId>

        <version>2.1.0</version>

    </dependency>

    1.6.3-1.6.7版本:與javax.mail-api一樣,包結構未變化,隻是包名稱和坐标發生了變化。已經過時停。

    版本2.0.0,2.0.1,2.1.0:包名由javax.mail變化為了jakarta.mail,為現在的主流版本。其中2.1.0版本的最低jdk要求為11

    注意,因包名變化,jakarta mail api 1.6.X版本與2.X+版本不相容。

  3. spring mail

    spring mail為javax.mail的實作,其代碼位于spring-context-support包中。

    截止到目前為止(5.3.21版本)spring mail都是實作的javax.mail包的api,沒有實作jakarta.mail包中的api。單獨使用時,需要引入javax.mail-api包(或jakarta.mail-api的1.6.X版本)

    spring-boot-starter-mail也是使用的spring-context-support發送郵件。自動依賴了javax.mail api包。

  4. sun javax mail

    該包為javax.mail-api的實作包,jar包内部包含了javax.mail-api的所有類,是以直接引用此實作包時,可以不需要單獨引入javax.mail-api包,目前已過時停止

    maven倉庫坐标及版本:

    <!-- https://mvnrepository.com/artifact/com.sun.mail/javax.mail -->

    <dependency>

        <groupId>com.sun.mail</groupId>

        <artifactId>javax.mail</artifactId>

        <version>1.6.2</version>

    </dependency>

    版本為1.4.4-1.4.7,1.5.0-1.5.6,1.6.0-1.6.2,與javax.mail-api的版本一一對應。

  5. sun jakarta mail

    該包為jakarta mail api的實作包,jar包内部包含了jakarta.mail-api的所有類,是以直接引用此實作包時,可以不需要單獨引入jakarta.mail-api包。為現在的主流版本。

    maven倉庫坐标及版本:

    <!-- https://mvnrepository.com/artifact/com.sun.mail/jakarta.mail -->

    <dependency>

        <groupId>com.sun.mail</groupId>

        <artifactId>jakarta.mail</artifactId>

        <version>2.0.1</version>

    </dependency>

    版本為2.0.0,2.0.1,與jakarta.mail-api的版本一一對應。

    目前暫時未釋出2.1.0的版本,也就是說2.1.0版本的jakarta.mail-api,暫時沒有對應的實作包。