首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JAXB依赖冲突?

JAXB依赖冲突?
EN

Stack Overflow用户
提问于 2019-08-19 11:34:05
回答 1查看 1.8K关注 0票数 1

我在使用docx4j时遇到了一个错误,并且可能找到了它的原因:

代码语言:javascript
复制
javax.xml.bind.JAXBException: JAXB: Can't instantiate JAXB Reference Implementation
 - with linked exception:
[java.lang.ClassNotFoundException: org.docx4j.jaxb.ri.NamespacePrefixMapper]

在我的项目中,我使用docx4j-JAXB-内部v.8.1.2 +docx4j-export v.8.1.2 (由Maven编写)

我还使用Hibernate (hibernate-core-5.4.2),在它们的POM中可以看到,依赖项包含:

  1. javax.xml.bind -> jaxb-api v.2.3.1
  2. org.glassfish.jaxb -> jaxb-运行时v.2.3.1

所以,当我来到NamespacePrefixMapperUtils::getPrefixMapper时,

它试图找到"com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl",

  • 参考docx4j-JAXB-内部,

但在这里我得到了"com.sun.xml.bind.v2.runtime.JAXBContextImpl“

  • 引用hibernate -> glassfish -> jaxb-运行时

我觉得有依赖性的冲突,我该怎么解决呢?谢谢

EN

回答 1

Stack Overflow用户

发布于 2019-08-19 13:28:55

修正了这个问题:

在文件夹中

代码语言:javascript
复制
resources/META-INF/services

我创建了名为javax.xml.bind.JAXBContext的文件

然后我把这条绳子插进去:

com.sun.xml.internal.bind.v2.ContextFactory

默认的上下文工厂,它被覆盖了,所以它是利润

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57555919

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档