You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何正确修复Java 10中jaxb-impl 2.3.0非法反射访问报错?

Java 10升级中JAXB缺失的根治方案

最近我们团队在推进部分遗留代码向Java 10升级,碰到了一个典型问题:JAXB在Java 10及更高版本里默认不再是JDK的内置组件了。这里必须划个重点:别用各种JVM参数去绕开问题表象,那只是临时的权宜之计,从根源上通过依赖管理修复才是长期可行的方案。

我已经在项目的pom.xml里添加了JAXB的核心API依赖,代码片段如下:

<!-- 引入JAXB API依赖 -->
<dependency>
    <groupId>javax.xml.bind</groupId>
    <artifactId>jaxb-api</artifactId>
    <version>2.3.0</version>
</dependency>

顺带补充一句,如果之后运行时出现找不到JAXB实现类的报错,记得再加上运行时的实现依赖,比如GlassFish的JAXB运行时:

<dependency>
    <groupId>org.glassfish.jaxb</groupId>
    <artifactId>jaxb-runtime</artifactId>
    <version>2.3.0</version>
    <scope>runtime</scope>
</dependency>

这种方式直接把需要的依赖纳入项目管理,不管后续Java版本怎么升级,都能稳定保证JAXB功能正常工作,比靠JVM参数临时规避问题靠谱得多。

内容的提问来源于stack exchange,提问作者Thorbjørn Ravn Andersen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 04:15:12