本文可以任意轉載,但請保留原出處:
http://www.webwork.cn/archives/50009640.html為什么要使用Maven,使用Maven有什么好處
maven是一個可以幫助你進行項目編譯、文檔管理、報告管理、包依賴管理、SCMs管理、發布等的工具,它可以協助你完成以下工作:
1.快速創建一個工程文件
2.幾乎不用做任何設置,可以立即進行編譯、測試、打包等工作。以前用Ant的時候,也可以很方便的做這些工作,但是寫Ant的build.xml文件是一件很煩瑣的事情。
3.創建項目文檔非常容易,可以自動生成一個web site,記錄你的項目情況、版本信息、兩個版本之間的change list等。
4.非常方便的遠程發布、scm(cvs)管理功能。
5. 依賴管理功能。這個功能是我非常喜歡的功能。我們在做多個不同的Java項目時,每個項目所用到的庫文件基本都是大同小異的,通常的做法是每個項目下面都會復制一份這些庫文件,甚至會把這些庫文件都提交到cvs上去,這樣帶來的問題不僅是增大了項目占用的硬盤空間,而且也使包管理很混亂,當我需要在另外的機器上進行工作時,我通常需要重新建立我的工程文件。maven所采用的形式,類似于yum、apt、ports等Linux/Unix的包依賴管理模式,你只需要在配置文件中指明你依賴什么樣的包,在用maven編譯的時候,它首先會檢查你的本地倉庫中是否存在該庫文件,如果沒有,它就會自動去下載,默認從
http://www.ibiblio.org/maven/上下載,對于公司內部,可以創建一個自己的庫服務器,Maven使用入門,請參考下面的文檔
Getting Started with maven:
http://maven.apache.org/guides/getting-started/index.html使用Maven管理Eclipse項目
假設一個mydemo的web項目,在這里我將該項目分為兩個模塊,分別為mydemo-core和mydemo-web,其中mydemo-core項目為核心java程序文件,輸出為jar文件;mydemo- web為web部分,自身基本沒有java程序文件,除了一部分與web集成較為緊密的,它主要使用mydemo-core生成的java lib。我們用maven創建一個project,來管理該項目,而mydemo-core和mydemo-web同時又是eclipse project,可以直接在eclipse中打開,并進行程序開發。
1.創建mydemo項目
cd d:\mywork
mvn archetype:create -DgroupId=com.example.mydemo -DartifactId=mydemo
生成mydemo目錄,刪除該目錄下src目錄,修改pom.xml,將packaging值修改為:
<packaging>pom</packaging>
2. 然后分別創建mydemo-core、mydemo-web兩個模塊
cd mydemo
mvn archetype:create -DgroupId=www.example.mydemo.core -DartifactId=mydemo-core
mvn archetype:create -DgroupId=www.example.mydemo.web -DartifactId=mydemo-web -DarchetypeArtifactId=maven-archetype-webapp
3. 修改d:\myworkpom.xml文件,添加
<modules>
<module>mydemo-core</module>
<module>mydemo-web</module>
</modules>
4. 分別在mydemo-core和mydemo-web目錄下的pom.xml文件中添加:
<parent>
<groupId>cn.webwork.mydemo</groupId>
<artifactId>mydemo</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
5. 然后在d:\mywork\mydemo-webpom.xml中添加依賴 mydemo-core包的信息,如下:
<dependency>
<groupId>cn.webwork.mydemo.core</groupId>
<artifactId>mydemo-core</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
關于pom.xml配置文件的詳細情況,請參考:
Project Setting:
http://maven.apache.org/maven-model/maven.htmlIntroduction to POM:
http://maven.apache.org/guides/introduction/introduction-to-the-pom.html6. 創建完成后,就會分別生成兩個目錄,然后分別對其生成相應的eclipse工程文件,方法為:
cd mydemo-core
mvn eclipse:eclipse
cd ..
cd mydemo-web
mvn eclipse:eclipse -DdownloadSource=true -Dwtpversion=1.0 (指定wtpversion屬性,用于生成wtp的工程文件)
創建完成這兩個eclipse工程文件后,就可以在eclipse中打開了。
7. 回到 d:mywork目錄下,執行mvn compile 就可以對這兩個文件進行編譯,還有mvn install ,mvn package等命令。
mydemo文件下載:
http://project.livedoor.cn/~roger/mydemo.zip關于mvn命令:
在上面的過程中,大家看到諸如 mvn archetype:create / mvn eclipse:eclipse等這些命令,如何查詢這些命令更多幫助信息?
請參考:
http://maven.apache.org/plugins/index.html其實象archetype:create eclipse:eclipse等都是maven的插件,默認安裝的時候,這些插件都已經安裝,還有很多第三方的插件,
具體使用方式,都可以從上面的地址中查到。
如,site插件, Generate a site for the current project
當你執行mvn site的時候,就會自動生成一個web site,用于展示你的項目信息。
以上整理的比較混亂,估計對大家幫助不是很大,但希望能夠通過這篇文章,能讓大家知道maven是個非常好的工具,如果你想深入了解它,并在自己的項目中很好的使用,請參考下面的參考我文獻。
參考:
Maven:
http://maven.apache.orgMaven Eclipse Plugin:
http://m2eclipse.codehaus.org/http://maven.apache.org/guides/mini/guide-ide-eclipse.html
posted on 2006-09-14 15:53
壞男孩 閱讀(999)
評論(0) 編輯 收藏 所屬分類:
java命令學習