저는 다중 모듈 프로젝트를 가지고 있습니다. 각 모듈은 자신/target 폴더에 jar/war 파일로 패키지되어 있습니다.zip 파일에 다중 모듈을 패키지하는 방법은 무엇입니까?
모든 jar/war 파일과 일부 설정 파일을 가져 와서 모든 것을 zip에 넣고 싶습니다.
어떻게 수행하나요? 나는 어셈블리 플러그인을 사용해 보았지만, 지금까지 해왔 던 모든 작업은 각각의/target 폴더에있는 각 모듈의 압축이므로 매우 쓸모가 없다. ^^
저는 다중 모듈 프로젝트를 가지고 있습니다. 각 모듈은 자신/target 폴더에 jar/war 파일로 패키지되어 있습니다.zip 파일에 다중 모듈을 패키지하는 방법은 무엇입니까?
모든 jar/war 파일과 일부 설정 파일을 가져 와서 모든 것을 zip에 넣고 싶습니다.
어떻게 수행하나요? 나는 어셈블리 플러그인을 사용해 보았지만, 지금까지 해왔 던 모든 작업은 각각의/target 폴더에있는 각 모듈의 압축이므로 매우 쓸모가 없다. ^^
먼저 다른 모듈을 만들자. dist
새 모듈과 부모에 추가하고 유형 war
을 포함한 종속대로 결과 zip 파일에서보고 싶은 모든 모듈을 추가 jar
등
<packaging>pom</packaging>
이 모듈은 어떤 자바 코드를 포함하지 않는 원인을 제공해야
하는 주어진 의존성을 포함하는 zip 파일을 만들고 싶을뿐입니다.
<project ..>
<packaging>pom</packaging>
<dependencies>
<dependency>
<groupId>module-1</groupId>
<artifactId>module-1-artifact</artifactId>
<version>${project.version}</version>
<type>war</type>
</dependency>
<dependency>
<groupId>module-2</groupId>
<artifactId>module-2-artifact</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<id>make-bundles</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<descriptors>
<descriptor>proj1-assembly.xml</descriptor>
</descriptors>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
는 다음과 같은 설명을 추가
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
<id>dist-assembly</id>
<formats>
<format>zip</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<dependencySets>
<dependencySet>
<outputDirectory>/</outputDirectory>
<useProjectArtifact>false</useProjectArtifact>
<unpack>false</unpack>
</dependencySet>
</dependencySets>
</assembly>
종속성이 실행 순서가 제대로 메이븐에 의해 계산되어 있는지 확인하기 위해 필요하다.
해당 zip 파일에서 추가 구성이 필요한 경우 예를 들어 해당 파일을 src/main/config
에 추가하고 어셈블리 설명자에 fileSets 부분을 추가 할 수 있습니다.
의 가능한 복제본이 답변을 수락하지 못하는 이유를 이해하지 못했습니다. :) 고마워, 그것을 사용, 그것을 투표했다. –
[uber jar 란 무엇입니까?] (http://stackoverflow.com/questions/11947037/what-is-an-uber-jar) –