jakarta.mail-api
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>jakarta.mail</groupId>
<artifactId>jakarta.mail-api</artifactId>
<version>2.0.1</version>
</dependency><?xml version="1.0" encoding="iso-8859-1"?>
<!--
Copyright (c) 1997, 2021 Oracle and/or its affiliates. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Public License v. 2.0, which is available at
http://www.eclipse.org/legal/epl-2.0.
This Source Code may also be made available under the following Secondary
Licenses when the conditions for such availability set forth in the
Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
version 2 with the GNU Classpath Exception, which is available at
https://www.gnu.org/software/classpath/license.html.
SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
-->
<!--
This project builds the Jakarta Mail API jar file, which contains only
the jakarta.mail.* API definitions and is *only* intended to be used
for programs to compile against. Note that it includes none of the
implementation-specific classes that the jakarta.mail.* classes rely on.
NOTE: Because the jar still has to be usable on Java SE 8 and/or
on the classpath, implementation-specific com.sun classes are not included.
Therefore putting this file on the module-path may not work as expected.
To fix this, com.sun classes need to be added to the jar file
while the JPMS descriptor needs to be kept as-is.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
<parent>
<groupId>com.sun.mail</groupId>
<artifactId>all</artifactId>
<version>2.0.1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>jakarta.mail</groupId>
<artifactId>jakarta.mail-api</artifactId>
<packaging>jar</packaging>
<name>Jakarta Mail API jar</name>
<!-- for javadoc build to succeed -->
<dependencies>
<dependency>
<groupId>com.sun.activation</groupId>
<artifactId>jakarta.activation</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>
<properties>
<mail.extensionName>
jakarta.mail
</mail.extensionName>
<mail.packages.export>
jakarta.mail.*; version=${mail.spec.version}
</mail.packages.export>
<mail.bundle.symbolicName>
jakarta.mail-api
</mail.bundle.symbolicName>
<mail.moduleName>
jakarta.mail
</mail.moduleName>
<mail.recompile.skip>true</mail.recompile.skip>
</properties>
<build>
<plugins>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<!-- download the binaries -->
<id>get-binaries</id>
<phase>compile</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>com.sun.mail</groupId>
<artifactId>jakarta.mail</artifactId>
<version>${mail.version}</version>
</artifactItem>
</artifactItems>
<outputDirectory>
${project.build.outputDirectory}
</outputDirectory>
</configuration>
</execution>
<execution>
<!-- download the sources -->
<id>get-sources</id>
<phase>compile</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>com.sun.mail</groupId>
<artifactId>jakarta.mail</artifactId>
<version>${mail.version}</version>
<classifier>sources</classifier>
<outputDirectory>
${project.build.directory}/generated-sources/sources
</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
<configuration>
<!--
Include all the implementation source files so that
javadoc run as part of "deploy" will find all the
required classes.
Don't include the metadata files from the original
jar file.
-->
<excludes>
module-info.*,
META-INF/**
</excludes>
</configuration>
</plugin>
<!--
Skip compiling since the dependency plugin pulled in
the sources and class files.
We only need to compile JPMS descriptor.
-->
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<executions>
<execution>
<id>module-info-compile</id>
<goals>
<goal>compile</goal>
</goals>
<configuration>
<release>11</release>
<includes>
<include>module-info.java</include>
</includes>
</configuration>
</execution>
</executions>
</plugin>
<!--
Don't include the implementation classes in the jar file.
-->
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<finalName>${project.artifactId}</finalName>
<excludes>
<exclude>com/**</exclude>
</excludes>
</configuration>
</plugin>
<!--
Don't include the implementation sources in the jar file.
-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<configuration>
<excludes>
<exclude>com/**</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<excludePackageNames>com.sun.*</excludePackageNames>
<bottom>${mail.javadoc.bottom}</bottom>
<header>${mail.javadoc.api.header}</header>
<javadocDirectory>${project.build.directory}/generated-sources/sources</javadocDirectory>
</configuration>
</plugin>
</plugins>
</build>
</project>