programing

Spring Boot 2.5.0은 plain.jar 파일을 생성합니다.제거할 수 있나요?

goodsources 2022. 9. 4. 20:17
반응형

Spring Boot 2.5.0은 plain.jar 파일을 생성합니다.제거할 수 있나요?

Spring Boot 2.5.0 업데이트 후 이 업데이트는myprogram-0.0.1-plain.jar평소와 나란히 줄서다myprogram-0.0.1.jargradle이 new-by-by-by-by-by-by*.plain.jar파일? Gradle 7.0.2를 사용합니다.

얻을 수 있는 것

build/
  libs/
    myprogram-0.0.1.jar
    myprogram-0.0.1-plain.jar

원하는 것:

build/
  libs/
    myprogram-0.0.1.jar

build.gradle:

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'

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
}

test {
    useJUnitPlatform()
}

Spring Boot 2.5.0에서 변경된 것입니다.

@Thomas Kléger가 지적한 바와 같이:에서 설정할 수 있습니다.build.gradle배열.

build.gradle

jar {
    enabled = false
}

Kotlin dev의 경우:

tasks.getByName<Jar>("jar") {
    enabled = false
}

또는 다음 명령을 실행할 수 있습니다.bootJar작업입니다. 기본 실행 가능 항아리만 생성됩니다.

다음 설정을 사용해 보십시오.

jar {
   enabled = true
   archiveClassifier = '' //use empty string
}

왜냐면org.springframework.boot.gradle.plugin.JavaPluginAction.java

private void classifyJarTask(Project project) {
    project.getTasks().named(JavaPlugin.JAR_TASK_NAME, Jar.class)
            .configure((task) -> task.getArchiveClassifier().convention("plain"));
}

부터spring-boot-gradle-plugin소스 파일:

참조:

이 그래들 구성을 통해myprogram-0.0.1.jar대신myprogram-0.0.1-plain.jar

고객님의 고객명build.gradle.kts

// Build executable jar
tasks.jar {
    enabled = true
    // Remove `plain` postfix from jar file name
    archiveClassifier.set("")
}

테스트 완료 솔루션저도 같은 문제에 직면해 있었습니다.그래들 안에 아래를 추가해 주세요.

jar{
    archiveClassifier=''
    enabled = false
}

를 사용하는 대신build사용할 수 있는 그레이들 태스크bootJar부팅 가능한 항아리만 만들 수 있습니다.

주의해 주세요bootJar구축하기 전에 테스트를 실행하지 않습니다.

언급URL : https://stackoverflow.com/questions/67663728/spring-boot-2-5-0-generates-plain-jar-file-can-i-remove-it

반응형