2012-01-04 6 views
3

のアップロード:私が何をしようとしています何Mavenのアセンブリのプラグイン、私は2つのzipファイルを生成する必要があり、最終的には別のzipファイルにそれらをzip圧縮、次のようなもの持っている右のzipファイル

 <plugin> 
        <artifactId>maven-assembly-plugin</artifactId> 
        <executions> 
         <execution> 
          <id>assembly1</id> 
          <phase>package</phase> 
          <goals> 
           <goal>single</goal> 
          </goals> 
          <configuration> 
           <appendAssemblyId>false</appendAssemblyId> 
           <finalName>assembly1</finalName> 
           <descriptors> 
            <descriptor>assembly1.xml</descriptor> 
           </descriptors> 
           <attach>true</attach> 
          </configuration> 
         </execution> 
         <execution> 
          <id>assembly2</id> 
          <phase>package</phase> 
          <goals> 
           <goal>single</goal> 
          </goals> 
          <configuration> 
           <appendAssemblyId>false</appendAssemblyId> 
           <finalName>assembly2</finalName> 
           <descriptors> 
            <descriptor>assembly2.xml</descriptor> 
           </descriptors> 
           <attach>true</attach> 
          </configuration> 
         </execution> 
         <execution> 
          <id>assembly3</id> 
          <phase>package</phase> 
          <goals> 
           <goal>single</goal> 
          </goals> 
          <configuration> 
           <appendAssemblyId>false</appendAssemblyId> 
           <finalName>assembly3</finalName> 
           <descriptors> 
            <descriptor>assembly3.xml</descriptor> 
           </descriptors> 
           <attach>true</attach> 
          </configuration> 
         </execution> 
        </executions> 
    </plugin> 

さをassembly1.zipとassembly2.zipという2つのzipファイルを作成し、最後にこれらの2つのzipファイルをassembly3.zipに圧縮します。

ターゲットフォルダの下にzipファイルが作成され、assembly3.zipにアセンブリ1と2が表示されますzipファイルも同様です。

Mavenがローカルリポジトリにアップロードすると、zipファイルの1つがランダムにピックアップされ、アップロードするファイルはassembly3.zipファイルになります。私はそれはになったことを述べているがAssembly3.zip

<plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-install-plugin</artifactId> 
       <executions> 
        <execution> 
         <phase>install</phase> 
         <id>zip-upload</id> 
         <goals> 
          <goal>install-file</goal> 
         </goals> 
         <configuration> 
          <packaging>zip</packaging> 
          <artifactId>Assembly3</artifactId> 
          <groupId>${project.groupId}</groupId> 
          <version>${project.version}</version> 
          <file>${project.build.directory}/assembly3.zip</file> 
         </configuration> 
        </execution> 
       </executions> 
      </plugin> 

をアップロードしようここは私のMavenプラグインをインストールしている

[INFO] --- maven-assembly-plugin:2.2-beta-5:single (assembly1) @ MyTestWar --- 
[INFO] Reading assembly descriptor: assembly1.xml 
[INFO] Building zip: C:\MyTest\target\assembly1.zip 

[INFO] --- maven-assembly-plugin:2.2-beta-5:single (assembly2) @ MyTestWar --- 
[INFO] Reading assembly descriptor: assembly2.xml 
[INFO] Building zip: C:\MyTest\target\assembly2.zip 
**[WARNING] Artifact com.test:MyTestWar:zip:1.0.0.11-SNAPSHOT already attached to project, ignoring duplicate** 

[INFO] --- maven-assembly-plugin:2.2-beta-5:single (assembly3) @ MyTestWar --- 
[INFO] Reading assembly descriptor: assembly3.xml 
[INFO] Building zip: C:\MyTest\target\assembly3.zip 
**[WARNING] Artifact com.test:MyTestWar:zip:1.0.0.11-SNAPSHOT already attached to project, ignoring duplicate** 



**[INFO] Installing C:\MyTest\target\assembly1.zip to C:\Users\myUserName\.m2\repository\ 
com\test\MyTestWar\1.0.0.11-SNAPSHOT\MyTestWar-1.0.0.11-SNAPSHOT.zip** 

この

は、私はMavenのログで見たものですassembly3.zipをアップロードします。何らかの理由でMavenがassembly1.zipを取得しています。

また、私はこれらの警告に興味があります。

警告を破棄し、Assembly3.zipをアップロードする際の助けを借りてください。

おかげのみアップロードしたいアセンブリのための

答えて

2

使用

<attach>true</attach> 

。他の2回の実行では、このオプションを省略します。

3つのファイルをすべてアップロードするのではなく、ランダムなアセンブリを選択する理由は、assembly descriptorsのアセンブリIDがすべて同じであると推測しています。エラーメッセージ

は、[WARNING]アーティファクトcom.test:MyTestWar:ファスナー:1.0.0.11-SNAPSHOTは既にこの時

ヒントを複製無視して、プロジェクトに添付します。別のジップにfinalNameの値を指定した場合でも、アセンブリ記述子のIDから分類子を継承します。

関連する問題