maven添加zip文件以部署到远程服务器

时间:2016-09-26 14:58:22

标签: java maven zip maven-3 maven-deploy-plugin

我有maven项目。当我在target文件夹中点击安装 maven build zip jar 文件时。

但是当我点击部署时,它只会将 jar 文件和依赖项部署到远程存储库。

问题:如何使用标准maven插件添加zip文件以部署到远程nexus存储库。

修改

<packaging>custom-zip<packaging>

1 个答案:

答案 0 :(得分:2)

为了正确installdeploy一个额外的工件(由构建生成的文件,通常也遵循其版本控制和相关项目结果的连贯部分),您需要< strong>将添加到构建中,以便Maven将其作为其结果的官方可交付处理。

要将文件附加到构建,您可以使用build-helper-maven-plugin

以下是usage页面的示例摘录:

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>build-helper-maven-plugin</artifactId>
    <version>1.12</version>
    <executions>
      <execution>
        <id>attach-artifacts</id>
        <phase>package</phase>
        <goals>
          <goal>attach-artifact</goal>
        </goals>
        <configuration>
          <artifacts>
            <artifact>
              <file>the-generated-file</file>
              <type>extension of your file</type>
              <classifier>optional</classifier>
            </artifact>
          </artifacts>
        </configuration>
      </execution>
    </executions>
</plugin>

您应该在负责生成文件的插件声明之后放置上面的配置,也就是说,当您尝试将文件附加到构建时该文件应该存在。查看file配置元素,您应在此处指定文件,例如target\myfile.zip。在这种情况下,它会在package阶段附加,以便installdeploy阶段在处理过程中将其考虑在内。

调用

mvn clean install

然后,您将看到构建输出的一部分:

[INFO] --- build-helper-maven-plugin:1.12:attach-artifact (attach-artifacts) @ zip-example ---
[INFO]
[INFO] --- maven-install-plugin:2.4:install (default-install) @ zip-example ---
[INFO] Installing C:\data\eclipse-workspace\zip-example\target\zip-example-0.0.1-SNAPSHOT.jar to c:\data\m2\repository\com\sample\zip-example\0.0.1-SNAPSHOT\zip-example-0.0.1-SNAPSHOT.jar
[INFO] Installing C:\data\eclipse-workspace\zip-example\pom.xml to c:\data\m2\repository\com\sample\zip-example\0.0.1-SNAPSHOT\zip-example-0.0.1-SNAPSHOT.pom
[INFO] Installing C:\data\eclipse-workspace\zip-example\sample.zip to c:\data\m2\repository\com\sample\zip-example\0.0.1-SNAPSHOT\zip-example-0.0.1-SNAPSHOT-optional.zip
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------

注意:sample.zip实际上已作为m2复制到zip-example-0.0.1-SNAPSHOT-optional.zip本地存储库,因此根据项目配置(artifactIdversion重命名, classifier)。