JAXB 3.0(Jakarta EE 9)是不是有任何 maven 插件?

Posted

技术标签:

【中文标题】JAXB 3.0(Jakarta EE 9)是不是有任何 maven 插件?【英文标题】:Is there any maven plugin for JAXB 3.0 (Jakarta EE 9)?JAXB 3.0(Jakarta EE 9)是否有任何 maven 插件? 【发布时间】:2021-03-11 09:57:05 【问题描述】:

当前的 maven 插件(如 jaxb2-maven-plugin 和 maven-jaxb2-plugin)使用包 javax.xml 而不是 Jakarta EE 的新 jakarta.xml 包生成代码。似乎没有办法将它们中的任何一个配置为使用 JAXB 3.0。是否有适用于 JAXB 3.0 的 maven 插件?

【问题讨论】:

【参考方案1】:

jaxb2-maven-plugin 3.0.0 版将支持 JAXB 3。它似乎还没有在 Maven 存储库中提供,但您可以在 github 上获取它并在本地安装它。

备注:以前的版本几乎可以工作(你只需要更改它们的依赖版本),但不幸的是AbstractJaxbMojo 按名称预加载了一些 JAXB 类并且这些名称发生了变化。

【讨论】:

谢谢。我已经测试并且它有效,但是我在我的项目中使用了 jaxb2-basics (github.com/highsource/jaxb2-basics),而且我似乎 jaxb2-maven-plugin 不允许像 maven-jaxb2-plugin 这样的 xjc 插件。你知道它是否可能以及如何实现? 您应该可以通过arguments 配置属性激活插件。【参考方案2】:

https://github.com/evolvedbinary/jvnet-jaxb-maven-plugin 是 https://github.com/highsource/maven-jaxb2-plugin 的一个分支,增加了对 jaxb3 的支持,它发布在 maven Central 上。

您的里程可能会因 jaxb2-basics 的不同而有所不同,具体取决于具体的插件,因为它目前不支持 jaxb3。

【讨论】:

以上是关于JAXB 3.0(Jakarta EE 9)是不是有任何 maven 插件?的主要内容,如果未能解决你的问题,请参考以下文章

Jakarta EE 2020战果总结

Java EE已更名为Jakarta EE(雅加达?)你能接受这个新名字吗?

别了,JAVA EE! Eclipse基金会将其命名为----Jakarta EE

J2EE,Java EE,Jakarta EE 命名之间的恩恩怨怨

好书送不停|Java大事件——别了Java EE,你好Jakarta EE

如何在没有动态 Web 模块 3.0 facet hacks 的情况下将 jdk 9 maven spring boot 2 项目导入 eclipse ee 氧气?