首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Java11的javax.xml.bind.JAXBException

使用Java11的javax.xml.bind.JAXBException
EN

Stack Overflow用户
提问于 2020-05-01 20:35:29
回答 1查看 771关注 0票数 0

我知道java.xml.bind/JAXB在这个版本中被删除了,所以我们正在尝试用Jakarta来代替它。

当应用程序启动时,我会得到这样的结果:

代码语言:javascript
复制
javax.xml.bind.JAXBException: Implementation of JAXB-API has not been found on module path or classpath.
 - with linked exception:
[java.lang.ClassNotFoundException: com.sun.xml.internal.bind.v2.ContextFactory]
  at java.xml.bind/javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:232)
  ... ...

*类是rt.jar的一部分,我相信它在Java9中被删除了,但最新的雅加达源代码仍然引用它们……这是怎么回事呢?我看到一些有类似问题的帖子,典型的解决方案是Add Maven dependency

我能做些什么来让它工作吗?

EN

回答 1

Stack Overflow用户

发布于 2020-05-02 00:22:23

事实证明并不像我想的那么糟糕。rt。jar被分解成多个模块,我开始寻找我需要的模块。jaxb-runtime.jar在我看来是正确的,我在它上面运行了string/ grep -它确实包含了所有的com.sun.xml.bind类!

当我将这个jar添加到那些jar中时,我将原始错误更改为“找不到某些其他类”,并且我必须添加更多的jar,直到应用程序满意为止。最后我得到了这个: jakarta.activation.jar,jakarta.xml.bind-api.jar,jaxb-runtime.jar,istack-commons-runtime.jar,stax-ex.jar,FastInfoset.jar,txw2.jar

没有更改清单,makefile或任何其他与构建相关的内容,纯粹是打包问题。长叹一口气。

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

https://stackoverflow.com/questions/61542627

复制
相关文章

相似问题

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