You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaFX项目使用Simple Java Mail编译报错:找不到jakarta.mail类

解决JavaFX项目中SimpleJavaMail编译错误:找不到jakarta.mail.internet.InternetAddress

这个错误是因为你的JavaFX模块化项目没有显式声明依赖Jakarta Mail模块,而SimpleJavaMail底层依赖该模块处理邮件地址相关逻辑。

解决方案

修改你的module-info.java,添加对Jakarta Mail模块的依赖声明:

module com.mycompany.proyectodam {
    requires javafx.controls;
    requires javafx.fxml;
    requires java.base;
    requires java.sql;
    requires javafx.graphics;
    requires org.simplejavamail;
    // 添加这行,引入Jakarta Mail模块
    requires jakarta.mail;

    opens com.mycompany.proyectodam to javafx.fxml;
    opens com.mycompany.bd to javafx.base;
    exports com.mycompany.proyectodam;
}

补充说明

  • 测试项目能正常运行,是因为非模块化项目会自动加载classpath下的所有依赖类,而模块化项目必须显式声明依赖的模块。
  • 如果你用Maven/Gradle这类构建工具,SimpleJavaMail的依赖会自动引入Jakarta Mail的jar包,无需手动添加依赖,只需在module-info中声明requires即可。

内容的提问来源于stack exchange,提问作者Franco Milazzo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 07:26:01