java.lang.ClassCastException:类...位于加载程序“app”的未命名模块中 - spring-boot-dev-tools

khm*_*ise 6 java intellij-idea spring-boot spring-boot-devtools

我们有一个更大的 Spring boot 应用程序,它会导致以下异常:

    java.lang.ClassCastException: class jpa.XVersion cannot be cast to class jpa.XVersion (jpa.XVersion is in unnamed module of loader 'app'; jpa.XVersion is in unnamed module of loader org.springframework.boot.devtools.restart.classloader.RestartClassLoader @671ef14f)
    at y.package.abc(XService.java:70)
    at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:75)
    at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
Run Code Online (Sandbox Code Playgroud)

同时从 IDEA IntelliJ 内部与 JPA 类的关系开始。

从普通命令行启动时,该应用程序运行良好。

当我们删除依赖之后

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-devtools</artifactId>
  <optional>true</optional>
</dependency>
Run Code Online (Sandbox Code Playgroud)

IDE 中的执行工作正常,没有任何问题。

我们正在使用:

  • IntelliJ理念2020.1.2
  • Spring引导版本2.3.1,
  • JDK 11.0.7(采用开放JDK),
  • 阿帕奇Maven 3.6.3

有人已经观察到这类问题了吗?是否存在不同的解决方案然后删除依赖项?

小智 0

我删除了下面的依赖项并且它起作用了。

org.springframework.boot spring-boot-devtools 运行时 true