具有嵌入式servlet容器的Spring应用程序运行错误

时间:2016-09-12 19:54:53

标签: java spring web-services spring-boot

我正在学习Spring,但我遇到了问题。我创建了在嵌入式servlet容器中运行的独立应用程序(Web服务)。我使用Intellij IDEA和gradle。当我从IDEA运行应用程序时 - 一切正常。但是当我创建了jar文件并通过控制台运行时(" java -jar my.jar")我有错误(下面)。 我加载了官方样本(https://github.com/spring-guides/gs-rest-service)并且它也不起作用(通过运行jar)。 我看到了这个链接,但它对我没有帮助:Spring Boot: Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletContainerFactory bean

请帮忙

错误日志:

group 'ClientsIm'
version '1.0-SNAPSHOT'

buildscript {
    repositories {
        maven { url "http://repo.spring.io/libs-release" }
        mavenLocal()
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:1.4.0.RELEASE")
    }
}

apply plugin: 'java'
apply plugin: 'idea'
apply plugin: 'spring-boot'

sourceCompatibility = 1.5

repositories {
    maven { url "http://repo.spring.io/libs-release" }
    mavenLocal()
    mavenCentral()
}

dependencies {
    compile("org.springframework.boot:spring-boot-starter-web")
    testCompile group: 'junit', name: 'junit', version: '4.11'
}

我的build.gradle:

{{1}}

1 个答案:

答案 0 :(得分:0)

有什么东西告诉我你没有使用gradle创建你的jar?也许你是从intellij出口的?

(1)用gradle构建:

您应该使用gradle构建jar(使用spring-boot-gradle-plugin创建jar)。在项目的根目录下打开终端并输入:

$ gradle build
  ...

$ cd build/libs
$ java -jar yourjar.jar

(2)从Intellij导出spring-boot jar: