我正在尝试使用以下版本运行Spring启动应用程序:
<version>2.0.0.M4</version>
<java.version>1.9</java.version>
<spring.version>5.0.0.RELEASE</spring.version>
我的应用程序按预期工作但是当我添加以下依赖项(spring-boot-devtools)时,我在尝试运行时遇到错误:
mvn spring-boot:run
相关性:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
例外:
线程“main”中的异常java.lang.ClassCastException:java.base / jdk.internal.loader.ClassLoaders $ AppClassLoader无法强制转换为java.base / java.net.URLClassLoader
我尝试使用旧版本运行如下,它运行正常。
<version>2.0.0.BUILD-SNAPSHOT</version>
<java.version>1.9</java.version>
<spring.version>5.0.0.BUILD-SNAPSHOT</spring.version>
我想知道如果我在这里做错了什么可以指出我们,或者我们是否有2.0.0.M4的问题?
由于
辛格
答案 0 :(得分:0)
我认为这是一个与java版本9不兼容的spring boot dev-tool。 我使用稳定版的弹簧靴来解决这个问题。
答案 1 :(得分:0)
这适用于Spring Boot <version>2.0.0.M7</version>
用java 9
答案 2 :(得分:0)
我遇到了同样的问题。我已经通过将JDK的版本减少到1.8来解决了它。但是,我使用的是springboot的较低版本,但是您可以根据情况升级JDK版本。
答案 3 :(得分:0)
当我在Spring Boot应用程序中使用jdk 11时遇到了相同的问题。您必须使用jdk的旧版本(例如版本8),如果该版本不起作用,则请升级spring boot版本。前者为我工作。
答案 4 :(得分:0)
该错误表明存在不兼容的JDK,这可能是由于您的类路径上存在多个JDK,而当dev-tool尝试运行该应用程序时,最终选择了错误的JDK。