Spring Boot胖罐重命名

时间:2019-03-28 14:34:15

标签: spring-boot

当我尝试重命名在构建时生成的jar文件时,Spring不再生成胖jar:

jar {
    manifest {
        attributes 'Main-Class': mainClassName
    }
    baseName = 'app'
    classifier = null
    version = null
}

我将在app.jar文件夹中看到/build/libs/,但它仅包含项目,不包含依赖项,并且不会生成其他文件。如何使Spring重命名它所生成的包含依赖项的jar?

1 个答案:

答案 0 :(得分:1)

您已将jar任务上的分类器设置为null,而不是默认的空字符串("")。除非您明确配置bootRepackage以应用于jar任务,否则具有非默认分类器的任务将被忽略。 bootRepackage的信息级记录中暗示了这一点:

Jar task not repackaged (didn't match withJarTask): task ':jar'

最简单的方法是让classifier保留其默认的空字符串值。这将使您的jar任务具有以下配置:

jar {
    baseName = 'app'
    version = null
}

运行bootRepackage时,app.jar任务生成的jar文件将被重新打包,并根据需要包含其依赖项。