2011-11-23 99 views
5

我們有很多精簡的測試文件的項目,所以顯然測試jar文件非常大。由於沒有人使用測試罐(至少在外部項目中),我們不會通過上傳獲得任何好處。Maven部署不上傳測試jar

當我們運行maven deploy命令時,我希望它只上載項目jar文件而不是測試jar文件。有沒有辦法實現這一點?

+0

在我看來,默認情況下我的測試類沒有捆綁到測試jar中。你有特定的配置嗎? – YMomb

+0

僅供參考,不要部署「-sources.jar」參見[這裏](http://stackoverflow.com/questions/2580969/how-do-i-exclude-the-sources-jar-in-mvn-deploy) – boly38

回答

7

實際上測試jar文件默認情況下不會生成。很可能您正在使用attached tests明確地構建它們。如果是這樣,你可以從你的項目中刪除該配置,你應該很好去。

尋找像下面這樣的部分,你可以刪除相同的部分。

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-jar-plugin</artifactId> 
    <version>2.2</version> 
    <executions> 
    <execution> 
     <goals> 
     <goal>test-jar</goal> 
     </goals> 
    </execution> 
    </executions> 
</plugin> 

測試將繼續在沒有上述情況的項目上運行。

+0

我需要測試jar,但不想上傳到nexus。我們如何實現這一目標? – sumanth232

0

將您的測試文件放在src\test\java中應該有理想的結果。有關約定,請參閱Maven directory layout。如果您遵循這樣的項目組織,您將從使用Maven中獲得最大收益。大多數插件都假設您已經用這種方式構建了您的項目文件

+0

我們確實遵循這個結構,我們在src \ test \ resources \ ....中有我們所有的測試文件。這就是它們如何成爲測試jar的一部分。 – Ravi