나는 하위 프로젝트 인 Maven 프로젝트를 가지고있다. 그것은 많은 형제 프로젝트를 가지고 있으며이 프로젝트의 일은 형제 자매로부터 자원을 얻고 antrun 플러그인을 사용하여 zip 파일로 패키지하는 것입니다.허드슨의 모든 Maven 아티팩트 얻기
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<parent>
<artifactId>SystemOfRegistries</artifactId>
<groupId>someGroup</groupId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>someGroup</groupId>
<artifactId>deploy-data</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
<build>
<plugins>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<configuration>
<tasks>
<!--
Place any Ant task here. You can add anything you can add
between <target> and </target> in a build.xml.
-->
<zip destfile="${project.build.directory}/${build.finalName}.zip"
whenempty="fail">
<zipfileset dir="${project.parent.basedir}/build/AG" prefix="ag"/>
</zip>
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
우편 번호 작성에 유용합니다. 그러나 문제는 지퍼가 빌드의 아티팩트가 아니라는 것입니다. 그리고 Hudson에는 다운로드 할 링크가 없습니다.
허드슨에게 Maven의 유물으로 인식되게하거나 Maven에게 ZIP 이 유물 인임을 알리는 방법을 알아 내고 싶습니다. (필자는 패키징 요소가 누락 된 상태였으며 원치 않는 JAR을 유물로 사용했습니다).
답변 해 주셔서 감사합니다. artifact 이름으로'$ {project.build.directory}/$ {build.finalName} .zip'을 사용하고 defaul finalName을 오버라이드하지 않았기 때문에 결과 artifact 이름은 maven insall과 동일합니다. Maven은 표준 Maven 명명 규칙이 이미 유물에 있고 두 번째에 두지 않으려한다고 생각합니다. – harschware