2010-10-29 70 views
3

我對Maven很新,希望看到一個如何使用maven jar插件的例子。我已經訪問了here,但沒有找到任何示例。在文檔頁面上,爲這個目標列出了一些參數,但是我正在尋找的是如何將它們放置在'目標'或'執行'標籤中。謝謝。是否有任何如何使用maven-jar-plugin的例子?

+0

這些都不是例子,這就是爲什麼這不是'答案',但你看看:http://maven.apache.org/plugins/maven-jar-plugin/? – Jonathan 2010-10-29 13:47:16

回答

5

您通常不使用jar插件。如果您將包裝設置爲jar,則目標jar:jar會自動執行。

如果要配置Jar插件,像這樣做:

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-jar-plugin</artifactId> 
    <version>2.3.1</version> 
    <configuration> 
     <excludes> 
      <exclude>**/*.xml</exclude> 
     </excludes> 
    </configuration> 
</plugin> 

(例如:排除的jar所有XML文件)

沒有必要添加任何目標或執行塊,全局配置塊對所有執行都有效。

參考:

+0

+1簡潔。 – 2010-10-29 22:10:08

+0

謝謝你的答案。 – John 2010-11-02 19:08:04

5

我很新的Maven和希望看到的是如何一個使用Maven的Jar插件的例子。我已經到過這裏,但沒有找到任何例子。

所有的maven插件通常都有一個Usage頁面,Maven JAR Plugin也是如此。但正如seanizer指出的那樣,直接調用Maven JAR插件並不常見,您並不真正「直接使用它」,Maven的確如此。

的Maven自帶製作階段的build lifecycle(例如compiletestpackage等)和default Lifecycle Bindings(綁定到相位插件的目標),這取決於你的項目的包裝上。作爲用戶,您調用phase(例如package),然後Maven使用特定的插件目標來實際完成這項工作。

例如,對於與jar類型的packaging項目,勢必package目標是jar:jar和Maven將打包項目作爲JAR。對於類型爲warpackaging的項目,war:war綁定到package,Maven將在package期間產生WAR。等等。

這種方法的好處是無論項目類型如何(jar,war,ear等),您都不需要知道構建它的詳細信息。你只需要知道「已知」的階段:compile將編譯一個項目,test將編譯和運行測試,package將它打包等

在文檔頁面,出現了爲實現這一目標列出了一些參數,但我一直在尋找的是如何將他們置於「目標」或「執行」標籤中。

Guide to Configuring Plug-ins解釋規則來配置任何 Maven插件,這是通過指定<configuration>元件完成的。此<configuration>可以是通用(全局),也可以是針對參與build lifecycle的特定階段的目標的<execution>。一旦你知道如何配置其中的一個,你可以配置其中的任何一個(只有參數是針對每個插件的)。

在Maven Jar插件的特定情況下,一個全球性的<configuration>應該足夠了,這是不可能的,你需要一個特殊的<execution>(除默認的)。

+0

感謝Pascal,解釋Maven如何工作的高水平。 – John 2010-11-02 19:09:39

相關問題