【问题标题】:What Java Mail JARs does my project require?我的项目需要哪些 Java Mail JAR?
【发布时间】:2013-08-28 07:37:27
【问题描述】:

尝试使用SendGrid 发送电子邮件,使用here 所示的代码示例,它只是声明我需要“Java Mail”。

我去了here 并下载了Java Mail 1.4.7。在那个 ZIP 文件里面是:

  • mail.jar
  • lib/dsn.jar
  • lib/gimap.jar
  • lib/imap.jar
  • lib/mailapi.jar
  • lib/pop3.jar
  • lib/smtp.jar

我倾向于将所有 7 个 JAR 放在我的运行时类路径中,但 mailapi.jarmail.jar 似乎包含许多相同的类。

所以我问:当需要 Java Mail 时,哪些 JAR 需要位于运行时类路径中 - 为什么?

这适用于在 Tomcat 7 上运行的 Java Web 应用程序。

【问题讨论】:

  • 您应该检查您正在使用的 api。在此基础上,您可以决定可以省略哪些罐子。
  • 根据我提供链接的代码示例,我需要导入 javax.mail.*javax.mail.internet.*javax.mail.Authenticatorjavax.mail.PasswordAuthentication最重要的是,我需要了解何时使用 mail.jar 以及何时使用 mailapi.jar 就足够了,因为它们是两个具有冲突类的 JAR。
  • 另外,即使我需要导入的所有类都在 java.mail 包下,我不确定这些类是否会传递使用其他 JAR(我假设它们会这样做)。跨度>
  • 使用上面提供的包/类,我认为只使用 mail.jar 就可以了。
  • 感谢@GV (+1) - 我一定会试一试,但这个问题的核心是:为什么我应该使用mail.jar 而不是mailapi.jar?再次感谢!

标签: java smtp classpath jakarta-mail sendgrid


【解决方案1】:

这应该可以帮助您了解区别:

http://www.oracle.com/technetwork/java/notes-2-149762.txt

【讨论】:

  • NOTES.txt 和 README.txt 也在您下载的 zip 文件中。你找到他们了吗?如果您不知道,可以使用更新版本的 JavaMail here
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-10-28
  • 2013-10-20
  • 2023-01-13
  • 2018-07-26
  • 2018-03-24
  • 1970-01-01
  • 2012-11-21
相关资源
最近更新 更多