首页 > 解决方案 > java11 RCP 应用程序中的 JAXBContext#newInstance

问题描述

我正在将现有Eclipse RCP应用程序从 Java8 迁移到 Java11。因此,现在需要手动添加 JAXB 插件。如果有人正在寻找一个很好的例子,我找到了这个:https ://github.com/vogellacompany/eclipsercp-jaxb-java11

在那里,JAXBContext 像这样被实例化:

JAXBContext.newInstance(Bookstore.class.getPackageName(), Bookstore.class.getClassLoader());

有什么办法只通过课程就可以让工厂工作吗?像这样:

JAXBContext.newInstance(Bookstore.class);

在第二种情况下,我们得到了这个异常:

java.lang.ClassNotFoundException: org.eclipse.persistence.jaxb.JAXBContextFactory

标签: javajaxbjava-11rcp

解决方案


moxy 实现提供了一个显式工厂来创建 JAXB 上下文:org.eclipse.persistence.jaxb.JAXBContextFactory#createContext


推荐阅读