Update 2020
the next renaming
(due to some legal issues, javax.*
was renamed to jakarta.*
. So the current 1.2.2+ versions of Jakarta Activation Framework use the names:
jakarta.activation:jakarta.activation-api
(instead of javax.activation:javax.activation-api
) or
com.sun.activation:jakarta.activation
(instead of com.sun.activation:javax.activation
and javax.activation:activation
)
(The package names within this libraries is still javax.activation
so this issue is just with the Maven dependency names)
<dependency>
<groupId>jakarta.activation</groupId>
<artifactId>jakarta.activation-api</artifactId>
<version>1.2.2</version>
</dependency>
or
<dependency>
<groupId>com.sun.activation</groupId>
<artifactId>javax.activation</artifactId>
<version>1.2.0</version>
</dependency>
Attention: you do not need both dependencies, because com.sun.activation:javax.activation
include the classes from jakarta.activation:jakarta.activation-api
Hint Use Maven enforcer to keep your project free of this duplicates:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>3.0.0-M3</version>
<executions>
<execution>
<id>enforce-lib-ban</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<bannedDependencies>
<!-- the activation framework was renamed to jarkata activation framework -->
<excludes>
<exclude>javax.activation:javax.actication-api</exclude>
<exclude>com.sun.activation:javax.activation</exclude>
<exclude>javax.activation:activation</exclude>
</excludes>
<message>use jakarta.activation:jakarta.activation-api or com.sun.activation:jakarta.activation instead of javax.activation</message>
</bannedDependencies>
<!-- if you use com.sun.activation:jakarta.activation
<bannedDependencies>
<!- - the implementation com.sun.activation:jakarta.activation contains the api classes too - ->
<excludes>
<exclude>jakarta.activation:jakarta.activation-api</exclude>
</excludes>
<message>the implementation com.sun.activation:jakarta.activation is included and it contains the api classes too</message>
</bannedDependencies>
-->
</rules>
</configuration>
</execution>
</executions>
</plugin>