spring-boot - Java Class cast Exception - Spring boot

标签 spring-boot

Exception in thread "main" java.lang.ClassCastException: java.base/jdk.internal.loader.ClassLoaders$AppClassLoader cannot be cast to java.base/java.net.URLClassLoader at org.springframework.boot.devtools.restart.DefaultRestartInitializer.getUrls(DefaultRestartInitializer.java:93) at org.springframework.boot.devtools.restart.DefaultRestartInitializer.getInitialUrls(DefaultRestartInitializer.java:56) at org.springframework.boot.devtools.restart.Restarter.(Restarter.java:138) at org.springframework.boot.devtools.restart.Restarter.initialize(Restarter.java:537) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationStartedEvent(RestartApplicationListener.java:68) at org.springframework.boot.devtools.restart.RestartApplicationListener.onApplicationEvent(RestartApplicationListener.java:45) at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:166) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:138) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:121) at org.springframework.boot.context.event.EventPublishingRunListener.started(EventPublishingRunListener.java:63) at org.springframework.boot.SpringApplicationRunListeners.started(SpringApplicationRunListeners.java:48) at org.springframework.boot.SpringApplication.run(SpringApplication.java:304) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1186) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1175) at com.rme.hub.RmeApplication.main(RmeApplication.java:24)

最佳答案

java.base/jdk.internal.loader.ClassLoaders的存在来看在堆栈跟踪中,您使用的是 Java 9 或更高版本。 Spring Boot的DefaultRestartInitializer正在尝试将应用程序类加载器强制转换为 URLClassLoader .这适用于 Java 8 及更早版本,但不适用于 Java 9 或更高版本。 Spring Boot 已经 updated在 2.0 中以应对 Java 9 中的这种变化。

如果要在 Java 9 或更高版本中使用 Spring Boot,则应升级到 Spring Boot 2。在撰写本文时,最新版本是 2.0.5,支持 Java 8、9 和 10。Spring Boot 2.1,它将今年晚些时候发布,将增加对 Java 11 的支持。

关于spring-boot - Java Class cast Exception - Spring boot,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52385610/

相关文章:

java - 查询异常 : JPA-style positional param was not an integral ordinal

java - Spring Boot - 添加外部属性文件

java - 如何在 spring-boot 应用程序中为 Apache Tomcat 中的 AccessLogValve 设置属性 requestAttributesEnabled?

java - Spring Boot 应用程序在使用 Java 10 的 Docker 中启动时卡住

java - 将 OffsetDateTime 与 Spring Boot 和 MongoDB 一起使用会导致 MappingException

node.js - 是否可以使用 frontend-maven-plugin 在开发模式下启动 Web 应用程序(vuejs+springboot)?

java - 指定字段对于 MongoDB 是 transient 的,但对于 RestController 不是

spring - 如何在子项目中使用带有 gradle 的 spring.io 平台 bom

sql - 我如何将 Flyway 迁移用于单个模式和多个项目

java - Spring Rest API 与 Feign 客户端和可分页