Oracle JavaMail IMAP提供程序与Java 9不兼容?

问题描述 投票:1回答:1

在Java 9下使用Oracle JavaMail IMAP提供程序构建项目时,我从maven收到编译错误:

... cannot access com.sun.mail.util.ReadableMime
[ERROR]   class file for com.sun.mail.util.ReadableMime not found

(ReadableMime是IMAPMessage实现的接口)

它在Java 8下工作。

依赖关系是:

<dependency>
  <groupId>javax.mail</groupId>
  <artifactId>javax.mail-api</artifactId>
  <version>1.6.0</version>
</dependency>

<dependency>
  <groupId>com.sun.mail</groupId>
  <artifactId>imap</artifactId>
  <version>1.6.0</version>
</dependency>

javax.mail-api和imap都不包含com.sun.mail.util包,但它似乎不再是JRE的一部分(如果它是正式的)。

所以,我想这是Oracle imap提供程序中的一个错误,它现在在Jigsaw的存在下弹出,或者我错过了什么?

有趣的是,Eclipse编译器并没有抱怨。

javamail imap java-9
1个回答
1
投票

感谢EJP:

com.sun.mail:imap适用于com.sun.mail:javax.mail,但不适用于javax.mail:javax.mail-api。

后者不包括com.sun.mail.util包。 com.sun.mail:imap没有声明任何Maven依赖,但事实上它对com.sun.mail:javax.mail有编译依赖性。

© www.soinside.com 2019 - 2024. All rights reserved.