我们有一个较大的Sping 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)
同时从IDEA IntelliJ中与JPA类的关系开始。
从普通命令行启动时,应用程序工作正常。
移除依赖项后
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
IDE内的执行工作正常,没有任何问题。
我们正在使用:
- 创意智能J 2020.1.2
- Spring Boot 版本2.3.1,
- JDK 11.0.7(采用开放式JDK),
- ApacheMaven 3.6.3
是否有人已经观察到了这种问题?是否存在与删除依赖项不同的解决方案?
2条答案
按热度按时间dxxyhpgq1#
我删除了下面的依赖项,它工作了。
org.springframework. Boot spring-boot-devtools运行时为真
mhd8tkvw2#
禁用Spring开发工具重新启动
你可以使用
false
属性来禁用重启功能,大多数情况下你可以在 application.properties 中设置(这仍然会初始化重启类加载器,但它不会监视文件的变化)。如果您需要完全禁用重新启动支持,例如,因为它不适用于特定的库,则需要在调用
SpringApplication.run(…)
之前设置 *System属性 *。例如:
参考Spring文档