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

SpringBoot构建报An illegal reflective access operation错误如何解决

SpringBoot构建出现An illegal reflective access operation has occurred警告解决方案

问题根因

你添加javax.xml.bind依赖无效的核心原因是该方案不匹配当前问题场景:这类添加JAXB依赖的方案针对的是JDK9+移除内置JAXB模块导致的项目运行时报错问题。
你遇到的警告来源于本地Maven工具自带的guice.jar包,是运行Maven命令使用的JDK版本(9及以上)与当前Maven版本不兼容导致的,和你的SpringBoot项目代码没有直接关联。

可行解决办法

  • 方案1:统一Maven运行的JDK版本为JDK8
    你的pom.xml中已经指定项目Java版本为1.8,只需将本地环境变量的JAVA_HOME指向JDK8的安装路径即可。执行mvn -v可查看Maven当前使用的JDK版本,修改配置后重新执行构建命令即可消除警告。
  • 方案2:升级本地Maven版本
    将本地Maven升级到3.6.3及以上的正式版本,新版本Maven已经适配高版本JDK,修复了guice包的反射兼容问题,升级后重新构建即可消除警告。
  • 方案3:添加JVM参数屏蔽警告
    如果你不想修改现有JDK和Maven版本,可在执行Maven构建命令前添加启动参数开放访问权限:
    Linux/macOS系统执行:
    export MAVEN_OPTS="--add-opens java.base/java.lang=ALL-UNNAMED"
    
    Windows系统cmd执行:
    set MAVEN_OPTS=--add-opens java.base/java.lang=ALL-UNNAMED
    
    再执行构建命令即可屏蔽该警告。

额外优化建议

你的pom.xml中重复声明了两次javax.xml.bind:jaxb-api依赖,可删除重复的声明,避免不必要的依赖冗余。

内容的提问来源于stack exchange,提问作者user630702

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 03:39:00