项目 引入了javax.mail 依然报 java.lang.NoClassDefFoundError: com/sun/mail/util/DefaultProvider
时间: 2023-08-15 12:07:05 浏览: 370
JavaMail抛java.lang.NoClassDefFoundError (comsunmailutilLineInputStream)异常解决方案
3星 · 编辑精心推荐
这个错误通常是由于缺少 JavaMail API 的某些依赖项导致的。
请确保在您的项目中包含了以下依赖项:
1. `javax.mail:javax.mail-api`:JavaMail API 的主要依赖项。
2. `com.sun.mail:javax.mail`:JavaMail 实现的实际 JAR 文件。
此外,您还需要包含以下任何其他依赖项:
3. `javax.activation:activation`:如果您需要处理 MIME 类型,则需要此依赖项。
4. `javax.annotation:javax.annotation-api`:如果您使用了 JavaMail 的扩展功能,则需要此依赖项。
如果您使用的是 Maven,则可以将以下依赖项添加到您的 pom.xml 文件中:
```
<dependencies>
<dependency>
<groupId>javax.mail</groupId>
<artifactId>javax.mail-api</artifactId>
<version>1.6.2</version>
</dependency>
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>1.6.2</version>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>javax.annotation</groupId>
<artifactId>javax.annotation-api</artifactId>
<version>1.3.2</version>
</dependency>
</dependencies>
```
如果您不使用 Maven,请确保手动添加这些依赖项到您的项目中,并确保它们位于 classpath 中。
阅读全文