2011-02-26 73 views
3

我在Ant中有經驗,如何開始使用maven。 maven優於ant嗎?開始使用maven

+0

http://stackoverflow.com/questions/4266568/main-difference-between-ant-and-maven-build - 工具 - 第一個鏈接在「相關」塊右邊 – pingw33n 2011-02-26 09:40:29

+0

關於「如何開始使用maven」我有艱難的時間只是爲了通過maven背後的想法,一旦我做了我的maven的思維導圖我記錄在[這](http://bhuvangu.com/2014/06/understand-maven-the-core/)文章....這個答案可能會遲到但你希望它可以幫助別人。 – Bhuvan 2014-06-26 09:17:32

回答

4

這裏有一個很大的區別,螞蟻迫使你創建你自己的目標,你會得到一個默認的maven目標集,例如clean, install, package等沒有腳本。

Maven的促進你使用一個共同的目錄結構Java類,資源等,如果你這樣做,Maven是隻是在您指定一些項目的元數據,如namepackage,最重要的depenencies xml文件。它提供了類似的依賴關係查找ivy爲螞蟻做的。

基於標準的maven推廣,開發人員可以輕鬆地接近和構建您的項目。使用諸如Netbeans之類的IDE,只需選擇open project,然後點擊install按鈕即可在本地存儲庫中編譯和安裝項目。

我推薦使用maven的maven方式。以不同的方式做事往往會導致更多的痛苦,而不是價值。 Maven提供了一個插件結構,您可以在其中執行各種任務,例如根據需要調用螞蟻庫。如果您正在積極處理多個項目(並希望項目切換儘可能地簡單),maven是一個巨大的飛躍,尤其是在與存儲庫服務器(如NexusArchiva)結合使用時。

要開始

要麼你可以使用maven的archetype目標生成你的項目結構,或者你可以做我的複製考取一個空模板項目,每一次做的方式。然後你需要maven二進制文件和項目定義文件pom.xml,我通常也在項目之間複製粘貼。

樣本包含在下面。通過這個示例,您將獲得外部庫log4j,並自動獲取所有需要構建和打包自己的項目(在本例中爲jar文件)。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.company</groupId> 
    <artifactId>projectname</artifactId> 
    <packaging>jar</packaging> 
    <version>0.1.0-SNAPSHOT</version> 
    <name>${project.artifactId}</name> 
    <url>http://maven.apache.org</url> 

    <dependencies> 
     <dependency> 
      <groupId>log4j</groupId> 
      <artifactId>log4j</artifactId> 
      <version>1.2.16</version> 
     </dependency> 
    <!-- add more dependencies here ... --> 
    </dependencies> 


    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <configuration> 
        <source>1.6</source> 
        <target>1.6</target> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 

</project> 
0

與Ant相比,Maven做得很好的是依賴管理和標準化的構建生命週期。

至於學習更多一點,Maven文檔非常易讀和徹底。

我首先看看介紹Maven和其他構建工具之間差異的一些核心原則的入門篇。

http://maven.apache.org/what-is-maven.html

然後downlod和安裝Maven,打開你的終端類型...

mvn archetype:generate 

選擇所有默認設置,你會用一個簡單的構建工程結束與一個運行的類和一個匹配的測試文件。將其用作測試項目,以熟悉構建生命週期和依賴關係解決過程。

1

大約兩週前,我處於同樣的情況。在我看來,Maven比Ant更強大。

它有一個生成命令,可以非常容易地啓動各種類型的新項目(工件),並且還會與pom.xml文件 一起構建標準目錄結構,從而照顧許多事物需要寫在Ant的build.xml文件中。

管理依賴關係也好很多。 Maven將從repos下載依賴關係,並將它們存儲在系統的中央回購站中。如果依賴關係已經存在於本地存儲庫中,它將從此處取代它,而不是再次下載它。

我使用eclipse,maven有一個命令(mvn eclipse:eclipse),它在項目目錄中創建.classpath文件。所以不需要在eclipse中再次添加庫。

Maven的網站上的Getting started guide是一個很好的資源,涵蓋了相當多的東西 -