2015-04-03 34 views
0

給定一個帶有單個模塊(單個pom.xml)的maven項目,是否可以使用maven-assembly-plugin(或其他插件)來部署一個帶有除當前pom之外的其他artifactId的zip文件?如何使用其他artifactId部署程序集?


myProject的/ pom.xml的

mvn package會產生:

  • myProject的/目標/ myProjectActifactId-1.0.jar
  • myProject的/目標/ something-1.0.zip

我希望mvn deploy在我的N中部署兩個具有不同artifactIds的文件exus:

  • myGroupId/myProjectActifactId/1.0/myProjectActifactId-1.0.jar
  • myGroupId /事/ 1.0/something-1.0.zip
+1

簡單的問題:爲什麼? (爲什麼不簡單地使用組件插件來製作另一個項目呢?) – Seelenvirtuose 2015-04-03 07:59:42

+0

something-1.0.zip只由兩個非常小的xml文件組成,所以創建一個包含兩個模塊的父項目和一個新項目那個小郵編接縫太多了。 – fluminis 2015-04-03 08:13:10

+0

你可以使用無蓋貨車插件。 – 2015-04-03 09:06:16

回答

0

下面的解決方案工作,如果你需要安裝的壓縮文件本地存儲庫。 MVN清潔包安裝:安裝文件

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> 

下面的解決方案工作,如果你需要部署壓縮到遠程存儲庫。

MVN包部署:部署文件

<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> 
相關問題