maven - 将jar和ant zip文件发布到存储库

时间:2013-09-25 10:25:07

标签: java maven ant pom.xml

我正在使用以下maven文件。他将jar(artifact-1.0.jar)单独发布到存储库。但是我想要压缩zip文件(project1.zip)。任何人都可以帮忙解决这个问题吗?

http://maven.apache.org/xsd/maven-4.0.0.xsd“>

<modelVersion>4.0.0</modelVersion>

<groupId>com.java</groupId>
<artifactId>artifact</artifactId>
<packaging>jar</packaging>
<version>1.0</version>

<name>project1</name>

<build>
<sourceDirectory>src/main/java</sourceDirectory>
<resources>
  <resource>
    <directory>src/main/resources</directory>
  </resource>
</resources>
<testSourceDirectory>src/test/java</testSourceDirectory>

<plugins>
  <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-antrun-plugin</artifactId>
            <version>1.7</version>
            <executions>
                <execution>
                    <id>create-archive-in-archive-ant</id>
                    <goals>
                        <goal>run</goal>
                    </goals>
                    <phase>package</phase>
                    <configuration>
                        <target name="bundle">
                            //
                            //ant task to create zip file
                            //
                            <zip zipfile="target/project1.zip" basedir="${target-content}" />
                        </target>
                    </configuration>
                </execution>
            </executions>
            <dependencies>
                <dependency>
                    <groupId>ant-contrib</groupId>
                    <artifactId>ant-contrib</artifactId>
                    <version>1.0b3</version>
                    <exclusions>
                        <exclusion>
                            <groupId>ant</groupId>
                            <artifactId>ant</artifactId>
                        </exclusion>
                    </exclusions>
                </dependency>
                <dependency>
                    <groupId>org.apache.ant</groupId>
                    <artifactId>ant-nodeps</artifactId>
                    <version>1.8.1</version>
                </dependency>
            </dependencies>
        </plugin>

</plugins>
</build>

1 个答案:

答案 0 :(得分:2)

请改用assembly plugin。虽然它没有为您提供手动构建ZIP存档的所有选项,但它确实有一些巧妙的技巧,例如它会自动找出所有重要文件,因此您不会意外遗漏任何内容。

它还会“将创建的程序集附加到项目中,以便在安装和部署目标时将其上载到存储库中。”

This page explains how to use it