3.6.0版Java 10
原因:java.lang.NoClassDefFoundError:javax / activation / DataSource
你好,
尝试通过Mirth发送电子邮件时,出现上述错误。我已经阅读到Java 10中缺少一个类,但是找不到成功解决此问题的明确说明。任何帮助将不胜感激。
答案 0 :(得分:5)
在JDK 9和JDK 10中,包含CORBA或API的模块 默认情况下,默认情况下不解决Java SE和Java EE之间共享的问题 您在类路径上编译或运行代码。这些模块是 不建议移除。不解决这些模块的政策是 从Java SE和JDK中删除这些API的第一步 将来的版本。不推荐使用的模块是:
- java.corba — CORBA
- java.transaction — Java的子集 Java SE定义的事务API,以支持CORBA对象事务服务
- java.activation — JavaBeans激活框架
- java.xml.bind — XML绑定的Java体系结构(JAXB)
- java.xml.ws — XML Web服务的Java API(JAX-WS),Java平台的Web服务元数据和Java附件的SOAP(SAAJ)
- java.xml.ws.annotation-Java SE定义的JSR-250通用注释的子集,以支持Web服务
引用这些API中的类的现有代码不会 编译时无需更改构建。同样,在类上的代码 引用这些API中的类的路径将失败 除非进行更改,否则NoDefClassFoundError或ClassNotFoundException 有关如何部署应用程序的信息。
请参见JEP 320: Remove the Java EE and CORBA Modules,以获取有关迁移选项,模块的可能替代品的更多信息,并跟踪 从JDK中删除Java EE和CORBA模块的进展。
您有两种选择:
--add-modules java.activation
选项。您可以在mirth.properties
中为Mirth Connect设置或