Terry.Li-彬

          虛其心,可解天下之問;專其心,可治天下之學;靜其心,可悟天下之理;恒其心,可成天下之業。

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            143 隨筆 :: 344 文章 :: 130 評論 :: 0 Trackbacks

          本文內容主要參考

          http://maven.apache.org/guides/getting-started/maven-in-five-minutes.html

          1.安裝

          下載Maven.目前的版本是2.0.4

          http://www.apache.org/dyn/closer.cgi/maven/binaries/maven-2.0.4-bin.zip

          解壓縮后,設置環境變量M2_HOME到maven目錄;在環境變量path中增加maven的bin目錄。

          在命令行輸入

          Mvn -version

          顯示

          Maven version: 2.0.4

          則安裝成功。

          2. 網絡設置

          maven運行時需要網絡環境。如果你的網絡需要代理,則要在maven目錄的conf/settings.xml中設置。

          找到<proxies>節點,按照例子,根據自己實際環境設置。

          3.體驗maven

          在命令行中,進入你常用的項目文件夾,輸入

          mvn archetype:create -DgroupId=com.mycompany.app -DartifactId=my-app

          如果網絡配置正確,maven就會下載需要的文件,執行任務,最終顯示“BUILD SUCCESSFUL”,并生成my-app目錄。

          讓我們看一下mvn對項目目錄的組織:

          My-app

          ├─pom.xml

          └─src

          ├─main

          │ └─java

          │ └─com

          │ └─mycompany

          │ └─app

          │ └─App.java

          └─test

          └─java

          └─com

          └─mycompany

          └─app

          └─AppTest.java

          可以看出,代碼和測試代碼分別放在main及test文件夾下。

          Pom.xml描述項目對象模型(Project Object Model)。其模式文件為http://maven.apache.org/xsd/maven-4.0.0.xsd

          詳細的POM說明請參考相關資料。

          4.maven命令

          在命令行下輸入mvn -h , 顯示mvn幫助,其中usage: mvn [options] [<goal(s)>] [<phase(s)>]表明了mvn命令的構成。

          Options:可選的參數。比如前面提到的-version , -h等。

          Goal(s): 表示maven構建的“目標”。比如前面的

          mvn archetype:create -DgroupId=com.mycompany.app -DartifactId=my-app

          其中archetype:create表示archetype插件下的create目標。這里,插件是為了某種目的構建的目標的集合,maven通過插件擴展其功能。

          還可以為目標傳遞一些參數,比如上面的“-DgroupId=com.mycompany.app -DartifactId=my-app”。

          Phase(s):階段。表示maven構建生命周期 中的一個步驟。使用相位命令時,maven會執行生命周期中該階段之前的所有命令,使項目處于指定的“狀態”。

          比如在剛才創建的項目路徑下輸入mvn compile,會創建target文件夾,并編譯class,使項目處于“已編譯”狀態。

          • maven定義的生命周期中主要的相位如下:
          • validate: 驗證項目是否正確以及相關信息是否可用。
          • compile: 編譯。
          • test: 通過junit進行單元測試。
          • package: 根據事先指定的格式(比如jar),進行打包。
          • integration-test: 部署到運行環境中,準備進行集成測試。
          • verify: 對包進行有效性性和質量檢查。
          • install: 安裝到本地代碼庫。
          • deploy: 在集成或發布環境,將包發布到遠程代碼庫。

          在“默認”的生命周期之外,還有兩個“階段”:

          • clean: 清除以前的構建物。
          • site: 生成項目文檔。

          階段實際上是通過目標的組合實現的。

          5.組合命令

          可以通過對目標及相位的組合使得一個命令完成多個功能,比如:

          mvn clean dependency:copy-dependencies package

          相當于按順序執行

          mvn clean

          mvn dependency:copy-dependencies

          mvn package

          到這里,對maven應該有一個初步的印象并能上手使用了吧?更多的內容可以查閱相關的文檔。

          posted on 2007-12-24 10:58 禮物 閱讀(898) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。

          網站導航:
           
          主站蜘蛛池模板: 积石山| 静乐县| 达孜县| 伊川县| 平昌县| 石阡县| 咸丰县| 滨州市| 墨竹工卡县| 和林格尔县| 荣成市| 老河口市| 宁乡县| 昌都县| 昌吉市| 辽宁省| 庆城县| 怀柔区| 大连市| 丘北县| 施秉县| 九江县| 奈曼旗| 永德县| 鄂伦春自治旗| 米泉市| 仪征市| 仲巴县| 日照市| 克拉玛依市| 南澳县| 天长市| 天全县| 新乐市| 乌审旗| 建阳市| 景德镇市| 连江县| 阜南县| 宣城市| 密山市|