【问题标题】:How to deploy an assembly with an other artifactId?如何使用其他 artifactId 部署程序集?
【发布时间】:2015-04-03 07:46:41
【问题描述】:

给定一个带有单个模块(一个 pom.xml)的 maven 项目,是否可以使用 maven-assembly-plugin(或其他插件)部署一个带有不同于当前 pom 的 artifactId 的 zip 文件?

示例
我的项目/pom.xml

mvn package 将产生:

  • myProject/target/myProjectActifactId-1.0.jar
  • myProject/target/something-1.0.zip

我希望 mvn deploy 在我的 Nexus 中部署具有不同 artifactId 的两个文件:

  • myGroupId/myProjectActifactId/1.0/myProjectActifactId-1.0.jar
  • myGroupId/something/1.0/something-1.0.zip

【问题讨论】:

  • 简单问题:为什么? (为什么不简单地创建另一个项目,该项目具有使用程序集插件的那个工件 ID?)
  • something-1.0.zip 仅由两个非常小的 xml 文件组成,因此创建一个包含两个模块的父项目和一个用于该小 zip 接缝的新项目有点太多了。
  • 你可以使用 wagon 插件。
  • 这个 zip 文件是否属于您的项目?
  • 是的,它共享相同的 groupId 和版本号,但需要具有与主 jar 不同的 artifactId。在我的情况下,分类器是不够的。

标签: java maven


【解决方案1】:

如果您需要在本地存储库上安装 zip 文件,则以下解决方案有效。 mvn clean package install:install-file

pom.xml 文件如下所示

  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-install-plugin</artifactId>
    <version>2.5.2</version>
    <goals>
      <goal>install-file</goal>
    </goals>
    <configuration>
      <repositoryId>artifactory</repositoryId>
      <packaging>zip</packaging>
      <generatePom>true</generatePom>
      <artifactId>${project.artifactId}</artifactId>
      <groupId>${project.groupId}</groupId>
      <version>${zipfile.project.version}</version>
      <file>path-to-zip-file-created-by-assemblly </file>
    </configuration>
  </plugin>
</plugins>

如果您需要将 zip 部署到远程存储库,则以下解决方案有效。

mvn package deploy:deploy-file

  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-deploy-plugin</artifactId>
    <version>2.6</version>
    <goals>
      <goal>deploy-file</goal>
    </goals>
    <configuration>
      <repositoryId>artifactory</repositoryId>
      <packaging>zip</packaging>
      <generatePom>true</generatePom>
      <url>${repository.url}</url>
      <artifactId>${project.artifactId}</artifactId>
      <groupId>${project.groupId}</groupId>
      <version>${zip.project.version}</version>
      <file>path-to-zip-file-created-by-assemblly</file>
    </configuration>
  </plugin>

【讨论】:

    猜你喜欢
    • 2021-04-14
    • 2011-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多