2009-09-11 73 views
6

我正在構建一個有六個模塊的Maven項目。創建一個多模塊項目的所有罐子和源罐的存檔

我很喜歡用Maven或Ivy自己導入它,但其他團隊也想使用這些jar,但他們的做法是將jar和源jar提交到版本控制。

我想產生的所有模塊及其來源,他們可以但他們喜歡用一個zip /焦油組裝。

我讀過Maven Assembly Plugin: Including Module Binaries但我很害羞,因爲使用它的:

  1. linked FAQ entry返回404;
  2. 我需要手動指定所有模塊。

是否有其他選擇嗎?


更新:我已經使用內置的組件描述

mvn assembly:assembly -DprojectModulesOnly=true 
mvn assembly:assembly 

,並都失敗,

[INFO] ------------------------------------------------------------------------ 
[ERROR] BUILD ERROR 
[INFO] ------------------------------------------------------------------------ 
[INFO] Failed to create assembly: Error creating assembly archive bin: You must set at least one file. 

所有模塊建立已經運行後立即嘗試。

+0

我有這個完全相同的問題(和正好1年,2天后鏈接常見問題仍然是404) – Justin 2010-09-14 17:53:43

回答

-4

聽起來像你需要某種構建服務器。我本週在JavaZone 2009,看着Hudson CI http://hudson-ci.org/

服務器將創建您或其他團隊可以使用/下載的工件。

+0

感謝您的答案。我實際上使用Hudson,但是我想用Maven來做這件事,因爲我沒有找到一種方法來生成哈德森所有罐子的拉鍊。 – 2009-09-11 10:43:18

0

看一看的​​。我認爲binsrcpre-defined descriptor files是你需要的。

+0

它看起來像組裝插件找不到任何東西來組裝。你能否提供maven-assembly-plugin配置部分和程序集描述符? – 2009-09-11 12:02:43

+0

第一個鏈接已死亡。 – 2015-08-02 17:53:09

4

我認爲你是在正確的線路,裝配插件的moduleSets選項處理你以後。

如果你正在尋找一些有用的文檔,Maven的書Module Selection部分涵蓋它相當徹底,包括如何配置包括和排除,處理二進制和源,排除外部依賴。

1

我有這個問題,對我來說,溶液沒有把/開頭您<fileset><directory>

如果你這樣做,將在Windows上運行,而不是在Unix/Linux!

<fileSet> 
    <directory>src/main/</directory> 
    <outputDirectory></outputDirectory> 
    <includes> 
    <include>VERSION</include> 
    </includes> 
</fileSet> 

作品而

<fileSet> 
    <directory>/src/main/</directory> 
    <outputDirectory></outputDirectory> 
    <includes> 
    <include>VERSION</include> 
    </includes> 
</fileSet> 

導致

[ERROR]未能執行目標org.apache.maven.plugins:行家組裝-插件:2.3:單(execution-插件程序集)在項目test3上:無法創建程序集:創建程序集歸檔程序集時出錯:您必須至少設置一個文件。 - > [Help 1]