programing

Dependency-reduced-pom.xml을 기본 디렉토리에 추가하는 Maven Shade 플러그인

yoursource 2021. 1. 14. 23:28
반응형

Dependency-reduced-pom.xml을 기본 디렉토리에 추가하는 Maven Shade 플러그인


Maven 쉐이드 플러그인은 dependency-reduced-pom.xmlartifactname-shaded.jar 라는 파일을 생성 하여 기본 디렉토리에 배치합니다.

이것은 버그입니까? 대상 디렉토리에 있어야합니다. 해결 방법이 있습니까?


createDependencyReducedPomfalse 로 설정하면 생성되는 것을 피할 수 있습니다 .

예 :

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-shade-plugin</artifactId>
    <version>${maven-shade-plugin.version}</version>
    <configuration>
        <createDependencyReducedPom>false</createDependencyReducedPom>
    </configuration>
    ....
    ....
</plugin>

Apache에서 자세히 보기

여기에 이미지 설명 입력


bmargulies 의 답변과 Xv 에 대한 그의 의견을 기반으로 합니다. 의 대답에 따라 종속성 감소 POM을 출력하도록 구성하기로 결정했습니다 target/. 이는 VCS에서 이미 무시되었습니다.

이를 위해 플러그인 dependencyReducedPomLocationconfiguration요소에 요소를 추가했습니다.

<configuration>
  <dependencyReducedPomLocation>${project.build.directory}/dependency-reduced-pom.xml</dependencyReducedPomLocation>
  (...)
</configuration>

참조 https://issues.apache.org/jira/browse/MSHADE-121을 , 또한 https://issues.apache.org/jira/browse/MSHADE-124을 .

drp를 다른 곳으로 옮기는 옵션이 있지만 결과가 마음에 들지 않을 수 있습니다.

-shaded jar에 대해 잘못 알고 있습니다. 다른 곳으로 이동하지 않는 한 항상 target /에서 끝납니다.


이전 버전의 플러그인을 사용할 수 있습니다. maven-shade-plugin 버전 1.7은 / target에 씁니다.

버전 1.7.1부터 종속성이 감소 된 pom.xml이 basedir에 작성됩니다. MSHADE-124 가 수행 된 이유와 결과에 대해서는 문제를 참조하십시오 . dependencyReducedPomLocation을 설정하려고 하면 사이트 오픈 문제 MSHADE-145를 생성하는 데 문제가 발생할 수 있습니다 .


http://maven.apache.org/plugins/maven-shade-plugin/shade-mojo.html 의 문서 는 다음과 같은 경우 올바르지 않습니다.

createDependencyReducedPom 부울-음영 처리 된 아티팩트에 대해 단순화 된 POM을 생성할지 여부에 플래그를 지정합니다. true로 설정하면 uber JAR에 포함 된 종속성이 생성 된 POM의 섹션에서 제거됩니다. 축소 된 POM의 이름은 dependency-reduced-pom.xml이며 음영 처리 된 아티팩트와 동일한 디렉토리에 저장됩니다. dependencyReducedPomLocation도 지정하지 않는 한 플러그인은 프로젝트 basedir에 dependency-reduced-pom.xml이라는 임시 파일을 만듭니다. 기본값은 true입니다.

dependency-reduced-pom.xml은 음영 처리 된 아티팩트 (대상 디렉터리)와 동일한 디렉터리에 저장 되지 않습니다 . 실제로 대상이 아닌 기본 디렉터리에 생성됩니다.

참조 URL : https://stackoverflow.com/questions/11314182/maven-shade-plugin-adding-dependency-reduced-pom-xml-to-base-directory

반응형