给定一个带有单个模块的maven项目(一个单独的pom.xml)是否可以使用maven-assembly-plugin(或其他插件)部署一个zip文件,其中包含另一个artifactId而不是当前的pom?
实施例
myProject的/ pom.xml的
mvn package
将产生:
我希望mvn deploy
在我的Nexus中使用不同的artifactIds部署这两个文件:
答案 0 :(得分: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>