<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    qileilove

    blog已經轉移至github,大家請訪問 http://qaseven.github.io/

    maven 使用入門編寫pom 文件

    我們利用ecilpse 創建1個簡單的maven項目 來看看他的pom文件

    就像Make的Makefile、Ant的build.xml一樣,Maven項目的核心是pom.xml。POM(Project Object Model,項目對象模型)定義了項目的基本信息,用于描述項目如何構建,聲明項目依賴,等等。現在先為Hello World項目編寫一個最簡單的pom.xml。

    首先創建一個名為helloworld的文件夾,打開該文件夾,新建一個名為pom.xml的文件,輸入其內容,如代碼清單3-1所示。

    代碼清單3-1 Hello World的POM

    1. <?xml version="1.0" encoding="UTF-8"?> 
    2. <project xmlns="http://maven.apache.org/POM/4.0.0" 
    3. xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance" 
    4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0  
    5. http://maven.apache.org/mavenv4_0_0.xsd"> 
    6. <modelVersion>4.0.0</modelVersion> 
    7. <groupId>com.juvenxu.mvnbook</groupId> 
    8. <artifactId>helloworld</artifactId> 
    9. <version>1.0SNAPSHOT</version> 
    10. <name>Maven Hello World Project</name> 
    11. </project> 

    代碼的第一行是XML頭,指定了該xml文檔的版本和編碼方式。緊接著是project元素,project是所有pom.xml的根元素,它還聲明了一些POM相關的命名空間及xsd元素,雖然這些屬性不是必須的,但使用這些屬性能夠讓第三方工具(如IDE中的XML編輯器)幫助我們快速編輯POM。

    根元素下的第一個子元素modelVersion指定了當前POM模型的版本,對于Maven 2及Maven 3來說,它只能是4.0.0。

    這段代碼中最重要的是包含groupId、artifactId和version的三行。這三個元素定義了一個項目基本的坐標,在Maven的世界,任何的jar、pom或者war都是以基于這些基本的坐標進行區分的。

    groupId定義了項目屬于哪個組,這個組往往和項目所在的組織或公司存在關聯。譬如在googlecode上建立了一個名為myapp的項目,那么groupId就應該是com.googlecode.myapp,如果你的公司是mycom,有一個項目為myapp,那么groupId就應該是com.mycom.myapp。本書中所有的代碼都基于groupId com.juvenxu.mvnbook。

    artifactId定義了當前Maven項目在組中唯一的ID,我們為這個Hello World項目定義artifactId為helloworld,本書其他章節代碼會分配其他的artifactId。而在前面的groupId為com.googlecode.myapp的例子中,你可能會為不同的子項目(模塊)分配artifactId,如myapputil、myappdomain、myappweb等。

    顧名思義,version指定了Hello World項目當前的版本——1.0SNAPSHOT。SNAPSHOT意為快照,說明該項目還處于開發中,是不穩定的版本。隨著項目的發展,version會不斷更新,如升級為1.0、1.1SNAPSHOT、1.1、2.0等。6.5節會詳細介紹SNAPSHOT,第13章會介紹如何使用Maven管理項目版本的升級發布。

    最后一個name元素聲明了一個對于用戶更為友好的項目名稱,雖然這不是必須的,但還是推薦為每個POM聲明name,以方便信息交流。

    沒有任何實際的Java代碼,我們就能夠定義一個Maven項目的POM,這體現了Maven的一大優點,它能讓項目對象模型最大程度地與實際代碼相獨立,我們可以稱之為解耦,或者正交性。這在很大程度上避免了Java代碼和POM代碼的相互影響。比如當項目需要升級版本時,只需要修改POM,而不需要更改Java代碼;而在POM穩定之后,日常的Java代碼開發工作基本不涉及POM的修改。

    posted on 2014-03-05 11:48 順其自然EVO 閱讀(5023) 評論(1)  編輯  收藏 所屬分類: maven

    評論

    # re: maven 使用入門編寫pom 文件 2015-11-10 20:11 玩玩

    3333  回復  更多評論   

    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    導航

    統計

    常用鏈接

    留言簿(55)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 18级成人毛片免费观看| 18禁美女裸体免费网站| 午夜视频在线在免费| xvideos亚洲永久网址| 久久亚洲高清观看| 亚洲小说图区综合在线| 国产精品永久免费视频| 一本久久免费视频| 亚洲毛片免费视频| 亚洲一级免费视频| 99久久成人国产精品免费| 免费看少妇作爱视频| 亚洲国产一区二区a毛片| 日韩精品亚洲专区在线影视| 人妻无码一区二区三区免费| 亚洲国产精品激情在线观看| 亚洲午夜理论片在线观看| 日本免费一区二区三区最新| 在线电影你懂的亚洲| 国产精品极品美女自在线观看免费 | 亚洲日韩精品一区二区三区无码 | 亚洲精品无码av天堂| 日本亚洲色大成网站www久久| 日韩精品免费视频| 一本久到久久亚洲综合| 成全视成人免费观看在线看| 国产乱弄免费视频| 亚洲色大18成人网站WWW在线播放| 免费国产人做人视频在线观看| 国产成人精品日本亚洲专区6| 亚洲一区二区三区免费在线观看| 国产亚洲AV手机在线观看| 特级毛片免费播放| 精品国产麻豆免费网站| 国产裸体美女永久免费无遮挡| 久久亚洲AV成人出白浆无码国产 | 特级做A爰片毛片免费看无码| 国产人成免费视频网站| 84pao国产成视频免费播放| 亚洲欧美乱色情图片| 天天影视色香欲综合免费|