当前位置: 首页 > 知识库问答 >
问题:

Eclipse: java.lang.NoClassDefFoundError: javax/activation/DataHandler

宇文航
2023-03-14

我正试着用java发一封电子邮件。代码如下:

String mailSmtpHost = "smtp.example.com";
String mailTo = "email@example.com";
        String mailFrom = "email@example.com";
        String mailSubject = "Email subject";
        String mailText = "Some text";
        Properties properties = new Properties();
        properties.put("mail.smtp.host", mailSmtpHost);
        Session emailSession = Session.getDefaultInstance(properties);
try {
            Message emailMessage = new MimeMessage(emailSession);
            emailMessage.addRecipient(Message.RecipientType.TO, new InternetAddress(mailTo));
            emailMessage.setFrom(new InternetAddress(mailFrom));
            emailMessage.setSubject(mailSubject);
            emailMessage.setText(mailText);
            emailSession.setDebug(true);
            Transport.send(emailMessage);
        }catch(Exception e) {
            System.out.println("Errore email: "+e.toString());
        }

当我编译项目时,在线:

Message emailMessage = new MimeMessage(emailSession);

...出现以下错误:

Exception in thread "main" java.lang.NoClassDefFoundError: javax/activation/DataHandler

注意:我正在使用java版本:9.0.4

共有3个答案

戚宏浚
2023-03-14

我在远程服务器上部署我的jar应用程序时也遇到了同样的错误。在我的例子中,我不得不下载javax并将其添加到我的项目中。激活库。

确保获得了正确的javac引用。邮件和javax。项目中的激活库。生成.JAR之前的属性文件

Project.properties

毕黎昕
2023-03-14

下载并添加外部jakarta.activation-1.2.1.jar这是雅加达激活项目。

邹德泽
2023-03-14

JDK 9禁用对许多javax的访问。*默认情况下,现在不建议使用javax激活。

但是,您可以通过在运行时添加模块来解决此问题

"--add-modules java.activation".
 类似资料:
  • 问题内容: 我正在尝试用Java发送电子邮件。这是代码: 当我编译项目时,在线: …出现以下错误: 注意:我正在使用 问题答案: JDK 9默认禁用对许多javax。* API的访问,现已弃用javax激活。 但是,您可以通过在运行时添加模块来解决它

  • Extensions are activated lazily in VS Code. As a result you need to provide VS Code with context as to when your extension should be activated. We support the following activation events: onLanguage:$

  • 我正在使用intelliJ IDEA中的谷歌应用引擎和maven开发一个webapp。 到目前为止一切都很好,直到我尝试使用发送电子邮件,我收到了这个错误: 我已经放置了所需的依赖项( 在本地修复它的一种方法是在vm选项中添加“--add modules java.activation”,当我在本地运行它时,它可以正常工作并发送电子邮件,但当我部署应用程序时,它无法工作。 我的问题是,有没有办法将

  • LeakyReLU层 keras.layers.advanced_activations.LeakyReLU(alpha=0.3) LeakyRelU是修正线性单元(Rectified Linear Unit,ReLU)的特殊版本,当不激活时,LeakyReLU仍然会有非零输出值,从而获得一个小梯度,避免ReLU可能出现的神经元“死亡”现象。即,f(x)=alpha * x for x < 0,

  • LeakyReLU层 keras.layers.advanced_activations.LeakyReLU(alpha=0.3) LeakyRelU是修正线性单元(Rectified Linear Unit,ReLU)的特殊版本,当不激活时,LeakyReLU仍然会有非零输出值,从而获得一个小梯度,避免ReLU可能出现的神经元“死亡”现象。即,f(x)=alpha * x for x < 0,

  • 本文向大家介绍Jebrains付费插件Activation code[持续更新],包括了Jebrains付费插件Activation code[持续更新]的使用技巧和注意事项,需要的朋友参考一下 使用本Activation code需要jetbrains-agent支持! 插件Activation code: 06KU174Y5C-eyJsaWNlbnNlSWQiOiIwNktVMTc0WTVDI