java - 无法访问 org.springframework.web.WebApplicationInitializer

标签 java spring hibernate spring-mvc spring-boot

我目前正在研究使用 Spring 4、Java 1.8 和 Gradle (https://spring.io/guides/gs/scheduling-tasks/) 安排任务的示例。

但是,当运行这个例子时,我收到以下错误:

Error:(11, 8) java: cannot access org.springframework.web.WebApplicationInitializer class file for org.springframework.web.WebApplicationInitializer not found

我的Application.java的源代码如下:

package hello;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.support.SpringBootServletInitializer;
import org.springframework.scheduling.annotation.EnableScheduling;

@SpringBootApplication
@EnableScheduling
public class Application extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(Application.class);
    }

    public static void main(String[] args) throws Exception {
        SpringApplication.run(Application.class);
    }
}

我的gradle文件:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:1.4.2.RELEASE")
    }
}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'idea'
apply plugin: 'org.springframework.boot'
apply plugin: 'war'

jar {
    baseName = 'gs-scheduling-tasks'
    version =  '0.1.0'
}

repositories {
    mavenCentral()
}

sourceCompatibility = 1.8
targetCompatibility = 1.8

dependencies {
    compile("org.springframework.boot:spring-boot-starter")
    testCompile("org.springframework.boot:spring-boot-starter-test")
    providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat'
}

为什么指南中甚至没有提到 org.springframework.web.WebApplicationInitializer 会导致此错误?

谢谢。

最佳答案

添加这个依赖来解决这个问题。我完美地为我工作。

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency> 

关于java - 无法访问 org.springframework.web.WebApplicationInitializer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41129553/

相关文章:

java - 实例化Java Spring存储库接口(interface)而不使用@Autowire

spring - 创建类路径资源中定义的名称为 'entityManagerFactory' 的 bean 时出错

java - 我在使用 VR android.view.InflateException : Binary XML file line #44: Error inflating class com. google.vr.sdk.widgets.video.VrVideoView 时出错

java - 我想用Java将4张图片合并在一起

spring - 如何在spring boot mvc中执行请求之前修改Http headers

java - 使用 Hibernate 在 MySQL 上将 TIMESTAMP 复制到 DATETIME

java - hibernate : load and LazyInitializationException

java - 在 Clojure 中使用索引保留有状态查找表的惯用方式

java - 了解这种情况下的 'void' 类型错误吗?

java - Spring Boot - YML 配置 - 合并时删除条目