Gradle项目错误 - java.lang.ClassNotFoundException:org.springframework.boot.SpringApplication

时间:2017-03-06 15:04:36

标签: java spring gradle spring-boot

这是我的主要应用程序代码:

package u.d.dip.rs.app;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;

@EnableWebSecurity
@SpringBootApplication
@ComponentScan(basePackages = "u.d.dip")
@EnableAutoConfiguration
public class DipApplication {
    public static void main(String[] args) {
        SpringApplication.run(DipApplication.class, args);
    }
}

我使用gradle来构建项目。即使正确导入SpringApplication文件,我也会收到以下错误:

Caused by: java.lang.ClassNotFoundException: org.springframework.boot.SpringApplication
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 6 more

Process finished with exit code 1

当我将鼠标悬停在SpringApplication

上时,我收到了关注gradle消息
[Gradle: org.springframework.boot:spring-boot:1.5.1.RELEASE] org.springframework.boot public class SpringApplication extends Object

非常感谢任何帮助。 提前谢谢!

4 个答案:

答案 0 :(得分:4)

如果您使用的是IntelliJ Idea,则新版本2016.3.6解决了这个问题。

答案 1 :(得分:2)

错误是由于gradle 3.4的问题我已经将我的gradle分配更改为3.2并且现在一切正常。

请参阅以获取更多信息: https://github.com/gradle/gradle/issues/1335

希望这能解决你的问题。

答案 2 :(得分:1)

我通过将gradle3.4更改为3.2来修复此错误

答案 3 :(得分:0)

我也遇到了这个问题,只是另一个故事。

我正在使用Spring Boot 2.2.5和Gradle 5.1.2。

运行gradle build -x test,它将告诉您这是什么错误。

在我的情况下,它告诉我error: package org.jasig.cas.client.authentication does not exist,但此包装实际上存在。

然后我记得我添加了一个依赖项runtimeOnly 'org.apereo.cas:cas-server-support-validation:5.3.15.1'

在评论此依赖性之后,我的项目可以开始成功。