qqjianyue代碼工

          砌java代碼
          posts - 62, comments - 9, trackbacks - 0, articles - 10
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          maven 概念與實踐 phase, goal, plugin

          Posted on 2011-09-22 10:01 Qzi 閱讀(9288) 評論(0)  編輯  收藏 所屬分類: appfuse2 and maven2
          參考這篇文章:http://blog.csdn.net/bluishglc/article/details/6632280 
          一。Maven的執行方式
          maven對構建(build)的過程進行了抽象和定義,這個過程被稱為構建的生命周期(lifecycle)。生命周期(lifecycle)由多個階段(phase)組成,每個階段(phase)會掛接一到多個goal。goal是maven里定義任務的最小單元,goal分為兩類,一類是綁定phase的,就是執行到某個phase,那么這個goal就會觸發,另外一類不綁定,就是單獨任務,這就相當于ant里的target。
          1。以phase來構建
          例如:
          mvn clean
          mvn compile
          mvn test
          mvn package
          表明maven會執行到某個生命周期(lifecycle)的某個階段(phase)
          這個phase以及它前面所有phase綁定的目標(goal)都會執行, 每個phase都會邦定maven默認的goal或者沒有goal, 或者自定義的goal。
          也可以通過傳入參數跳過(skip)某些phase,例如:
          mvn install -Dmaven.test.skip=true

          1。以goal來構建
          這類就是沒有綁定phase的goal,但是這類goal卻通常會有個執行前提,就是project必須執行到某個phase,
          那么執行這個goal,其實也會觸發maven執行到前提要求的phase。
          例如jetty:run是個非綁定phase的goal,它的前提是test-compile,這個前提是由plugin的代碼邏輯制定的

          /**
           * @goal run
           * @requiresDependencyResolution runtime
           * @execute phase="test-compile"
           * @description Runs jetty6 directly from a maven project
           */
          public class Jetty6RunMojo extends AbstractJettyRunMojo
          {
              ...
          }
          二。Maven lifecycle, phase概覽
          Maven預設了三個Lifecycle ,各包含了下列Phases.
          1. Clean Lifecycle
            • pre-clean
            • clean
            • post-clean
          2. Default Lifecycle
            • validate
            • initialize
            • generate-sources
            • process-sources
            • generate-resources
            • process-resources
            • compile
            • process-classes
            • generate-test-sources
            • process-test-sources
            • process-test-resources
            • test-compile
            • process-test-classes
            • test
            • prepare-package
            • package
            • pre-integration-test
            • integration-test
            • post-integration-test
            • verify
            • install
            • deploy
          3. Site Lifecycle
            • pre-site
            • site
            • post-site
            • site-deploy

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


          網站導航:
           
          主站蜘蛛池模板: 湖州市| 宕昌县| 西宁市| 方山县| 江油市| 泰来县| 西和县| 潜江市| 黑龙江省| 奇台县| 辽阳市| 海门市| 泗水县| 威远县| 平利县| 曲靖市| 岳池县| 碌曲县| 壤塘县| 信阳市| 莱西市| 盘锦市| 家居| 石河子市| 荔波县| 临沭县| 报价| 会东县| 胶南市| 安图县| 罗江县| 佳木斯市| 和硕县| 湖口县| 五家渠市| 逊克县| 桑植县| 大姚县| 体育| 保德县| 武义县|