談笑有鴻儒,往來無白丁

          在恰當的時間、地點以恰當的方式表達給恰當的人...  閱讀的時候請注意分類,佛曰我日里面是談笑文章,其他是各個分類的文章,積極的熱情投入到寫博的隊伍中來,支持blogjava做大做強!向dudu站長致敬>> > 我的微博敬請收聽
          本文可以任意轉載,但請保留原出處:
          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.html
          Introduction to POM:http://maven.apache.org/guides/introduction/introduction-to-the-pom.html

          6. 創建完成后,就會分別生成兩個目錄,然后分別對其生成相應的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.org
          Maven Eclipse Plugin: http://m2eclipse.codehaus.org/
          http://maven.apache.org/guides/mini/guide-ide-eclipse.html
          posted on 2006-09-14 15:53 壞男孩 閱讀(1001) 評論(0)  編輯  收藏 所屬分類: java命令學習
          主站蜘蛛池模板: 罗甸县| 宁蒗| 义乌市| 林芝县| 舟曲县| 梨树县| 平顺县| 江孜县| 余江县| 长寿区| 绥棱县| 五河县| 达州市| 尼木县| 丰台区| 新宾| 普陀区| 赣榆县| 亳州市| 舒城县| 庆安县| 顺平县| 静宁县| 红桥区| 库尔勒市| 丹寨县| 滕州市| 海淀区| 昂仁县| 英山县| 兴和县| 迁安市| 确山县| 民勤县| 万宁市| 道真| 灵璧县| 达州市| 遵化市| 余江县| 扶沟县|