Spring Boot 2.5.0生成plain.jar 如何禁止Gradle生成该文件?
问题原因
Spring Boot 2.5.0版本开始调整了Gradle构建逻辑,默认会同时生成两个jar产物:
bootJar任务生成的myprogram-0.0.1.jar:可执行fat jar,包含所有依赖项,是我们常规需要的Spring Boot应用构建产物- 原生
jar任务生成的myprogram-0.0.1-plain.jar:普通jar包,仅包含当前项目编译后的class文件,不含依赖
解决方案
在你的build.gradle配置中添加禁用原生jar任务的配置即可,修改后的完整配置如下:
plugins { id 'org.springframework.boot' version '2.5.0' id 'io.spring.dependency-management' version '1.0.11.RELEASE' id 'java' } group = 'com.example' version = '0.0.1-SNAPSHOT' sourceCompatibility = '11' // 新增以下配置,禁用普通jar任务,不会再生成-plain.jar文件 jar { enabled = false } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter' testImplementation 'org.springframework.boot:spring-boot-starter-test' } test { useJUnitPlatform() }
修改完成后重新执行./gradlew build命令,build/libs目录下就只会生成你需要的常规jar文件。
内容的提问来源于stack exchange,提问作者Tien Do Nam
相关产品推荐
相关产品推荐

