JavaMail API de Maven


Estoy tratando de actualizar a la última utilidad de correo Java.

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 artefacto de 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ó el id de grupo y si cambio el id de grupo para 1.5.1 necesito cambiar toda mi 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?

Author: dur, 2014-02-25

1 answers

Las coordenadas Maven cambiaron hace algún tiempo para ser compatibles con el esquema descrito aquí. Las nuevas coordenadas son aquí.

En resumen:

  • El groupId javax.mail ya no se usa para la implementación.
  • Hay un nuevo artefacto en javax.mail:javax.mail-api. Proporciona el archivo javax.mail-api.jar. Esto solo contiene las definiciones de la API de JavaMail, adecuadas para compilar.
  • com.sun.mail:javax.mail contiene el archivo javax.mail.jar, el jar de implementación de referencia JavaMail archivo, incluidos los proveedores de protocolo SMTP, IMAP y POP3.

Por lo tanto, debe usar com.sun.mail:javax.mail para la compilación y empaquetado/implementación, o usar javax.mail:javax.mail-api para la compilación y luego implementar el jar com.sun.mail:javax.mail cuando sea apropiado (por ejemplo, su Tomcat lib).

 65
Author: Bill Shannon,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-12 22:24:00