1.出现异常
Exception in thread “main” java.lang.ClassCastException: class jdk.internal.loader.ClassLoaders$AppClassLoader cannot be cast to class java.net.URLClassLoader (jdk.internal.loader.ClassLoaders$AppClassLoader and java.net.URLClassLoader are in module java.base of loader ‘bootstrap’)
2.解决
我是在How2j做Springboot实战项目时,启动SpringBoot项目时报出这个异常。网上找了找资料,问题出现在pom.xml中使用了热部署
<!-- 热部署 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> </dependency>
第一次使用热部署,了解了下概念:在开发中反复修改类、页面等资源,每次修改后都是需要重新启动才生效,这样每次启动都很麻烦,
浪费了大量的时间,我们可以在修改代码后不重启就能生效,在 pom.xml 中添加如下配置就可以实现这样的功能,我们称之为热部署1。
- 首先出现的问题很可能是JDK版本问题,我看了我的JDK版本,发现我的JDK是11版本,我把它调成1.8版本来启动就成功了。(我是因为系统还原了,idae的jdk没配我自己的,就默认使用了idea带的JDK11版本)。并且从异常可以大约猜猜跟JDK问题有关
2.网上也有人说,是SpringBoot版本问题,我目前使用的是1.5.x版本,完全支持。SpringBoot2.x我没测试,可以自己测试
-
参考博客:https://blog.csdn.net/mingxu_W/article/details/93198971 ↩︎