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

Spring Boot项目IntelliJ可运行,mvn启动报unnamed module错误的解决

Java 11 Spring Boot项目mvn spring-boot:run启动报错unnamed module的解决方法

问题描述

基于Java 11开发的Spring Boot项目,在IntelliJ IDEA中通过Run命令启动运行正常,但执行mvn spring-boot:run命令启动后,运行阶段出现unnamed module错误,导致第三方依赖类无法初始化。

错误日志

Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Handler dispatch failed; 
nested exception is java.util.ServiceConfigurationError: javax.xml.ws.spi.Provider: Provider com.sun.xml.ws.spi.ProviderImpl could not be instantiated] with root cause 
java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class 
java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module

项目环境

  • 项目基于Java 11 + Spring Boot构建
  • 依赖第三方提供的Jar包及其关联依赖,已将这些Jar包安装至本地Maven仓库
  • pom.xml中已配置对应依赖、本地仓库地址,且引入org.springframework.boot作为父依赖

问题原因与解决方法

问题根源

IntelliJ IDEA中配置的JDK版本与系统环境变量JAVA_HOME指向的JDK版本不一致,导致Maven执行spring-boot:run时使用了与IDE不同的JDK环境,触发模块访问权限问题。

解决步骤

修正系统环境变量JAVA_HOME,使其指向与IntelliJ IDEA中配置的JDK相同的版本,之后重新执行mvn spring-boot:run命令,项目即可正常启动运行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 23:18:25