example - API JavaMail de Maven
maven compiler plugin java 8 (1)
Estoy tratando de actualizar a la última utilidad de Java Mail.
De
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4.7</version>
</dependency>
a (mi intención)
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.5.1</version>
</dependency>
Pero no encuentro 1.5.1 para el artefacto del correo,
pero puedo ver
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>1.5.1</version>
</dependency>
Mi pregunta es por qué cambió la identificación del grupo y si cambio la identificación del grupo para la 1.5.1, necesito cambiar toda la implementación de correo que ya está presente (cambio de nombre de paquete y cualquier otra cosa) y cuál es la diferencia entre com.sun.mail
vs javax.mail
?
Las coordenadas de Maven cambiaron hace algún tiempo para ser compatibles con el esquema que se describe here . Las nuevas coordenadas están here .
En breve:
- El groupId
javax.mail
ya no se usa para la implementación. - Hay un nuevo artefacto en
javax.mail:javax.mail-api
. Proporciona el archivojavax.mail-api.jar
. Esto contiene las definiciones de API de JavaMail solamente, adecuadas para compilar contra. -
com.sun.mail:javax.mail
contiene el archivojavax.mail.jar
, el archivo jar de implementación de referencia JavaMail, incluidos los proveedores de protocolo SMTP, IMAP y POP3.
Por lo tanto, debe usar com.sun.mail:javax.mail
para compilación y empaque / implementación, o usar javax.mail:javax.mail-api
para la compilación y luego implementar el com.sun.mail:javax.mail
jar com.sun.mail:javax.mail
donde apropiado (por ejemplo, su lib de Tomcat).