API JavaMail de Maven

j'essaie de passer à la dernière version de Java Mail utility.

<dependency>
    <groupId>javax.mail</groupId>
    <artifactId>mail</artifactId>
    <version>1.4.7</version>
</dependency>

(mon Intention)

<dependency>
    <groupId>javax.mail</groupId>
    <artifactId>mail</artifactId>
    <version>1.5.1</version>
</dependency>

Mais je ne trouve pas 1.5.1 pour le courrier de l'artefact,

mais je peux voir

<dependency>
    <groupId>com.sun.mail</groupId>
    <artifactId>javax.mail</artifactId>
    <version>1.5.1</version>
</dependency>

ma Question est pourquoi group id a changé et si je change l'id du groupe pour 1.5.1 est-ce que je dois changer toute l'implémentation de mon mail qui est déjà présente (changement de nom de paquet et autres choses) et quelle est la différence entre com.sun.mail vs <!--4?

35
demandé sur dur 2014-02-25 20:39:56

1 réponses

les coordonnées Maven ont changé il y a quelque temps pour être compatibles avec le schéma décrit ici. Les nouvelles coordonnées sont ici.

En bref:

  • groupId javax.mail n'est plus utilisé pour la mise en œuvre.
  • il y a un nouvel artefact à javax.mail:javax.mail-api. Il fournit à l' javax.mail-api.jar fichier. Ceci contient uniquement les définitions de L'API JavaMail, qui conviennent à la compilation.
  • com.sun.mail:javax.mail contient l' javax.mail.jar file, le fichier JavaMail reference implementation jar, incluant les fournisseurs de protocole SMTP, IMAP et POP3.

alors, vous devriez utiliser com.sun.mail:javax.mail pour la compilation et de l'emballage/déployer, ou utiliser javax.mail:javax.mail-api pour la compilation et de déployer l' com.sun.mail:javax.mail jar le cas échéant (par exemple, votre lib Tomcat).

65
répondu Bill Shannon 2017-05-12 22:24:00