如何将Spring Boot项目导出到可执行的独立文件?

时间:2016-01-22 07:19:24

标签: java spring gradle spring-boot

我在Spring Tool Suite中使用Spring Boot和Gradle创建了一个项目,我真的不知道如何导出以使其工作。

我不太了解gradle,只是从maven存储库添加依赖项的基础知识。所以在一些文章中说要应用应用程序插件来完成任务,但我不知道如何设置配置文件以及如何创建可执行文件。

如果有人可以一步一步地编写或链接有关如何操作的详细说明,我们将非常感激。

这是我的build.gradle文件:

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

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

springBoot {
    mainClass = "com.rodamientosbulnes.objetivosventa.Application"
    executable = true
}

jar {
    baseName = 'objetivosventa'
    version =  '0.1.0'
}

repositories {
    mavenCentral()
}

sourceCompatibility = 1.8
targetCompatibility = 1.8

dependencies {
    compile('org.springframework.boot:spring-boot-starter')
    compile('org.springframework:spring-jdbc')
    compile('net.sourceforge.jtds:jtds:1.3.1')
    compile('org.apache.poi:poi-ooxml:3.13')
    compile('com.miglayout:miglayout-swing:4.2')
}

task wrapper(type: Wrapper) {
    gradleVersion = '2.3'
}

2 个答案:

答案 0 :(得分:2)

构建文件看起来很好,您只需要在STS中运行gradle build(或Run As -> Gradle -> Gradle build)来创建可运行的jar。

有关gradle插件配置的更多详细信息,请参见spring boot documentation site

答案 1 :(得分:1)

Gradle的应用程序插件不会为您提供单个execitable,但它可以创建一个分发版,其中包括项目的所有依赖项,jar-artifact以及运行它的2个脚本(一个批处理文件和linex可执行文件)

您需要知道的主要事情是spring-boot插件已经提供了您可能需要的application插件的所有任务。您可以找到的所有任务here。您需要distZipinstallDist将项目打包到分发中。此任务将在project-folder/build文件夹下创建就绪项目分发。您可能会发现另外一项有用的任务是buildRun,它将运行spring-boot应用程序而不将其打包分发。