這篇文章主要講解了“maven工程的pom文件有什么作用”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“maven工程的pom文件有什么作用”吧!
創(chuàng)新互聯(lián)公司專(zhuān)注于企業(yè)成都全網(wǎng)營(yíng)銷(xiāo)推廣、網(wǎng)站重做改版、內(nèi)江網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5響應(yīng)式網(wǎng)站、商城網(wǎng)站制作、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性?xún)r(jià)比高,為內(nèi)江等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。
POM文件結(jié)構(gòu)
<project> <parent> <!-- 被繼承的父項(xiàng)目的構(gòu)建標(biāo)識(shí)符 --> <artifactId></artifactId> <!-- 被繼承的父項(xiàng)目的全球標(biāo)識(shí)符 --> <groupId></groupId> <!-- 被繼承的父項(xiàng)目的版本號(hào) --> <version></version> <!-- 父項(xiàng)目的pom.xml文件的相對(duì)路徑。相對(duì)路徑允許你選擇一個(gè) --> <relativePath></relativePath> </parent> <!-- 聲明項(xiàng)目描述符遵循哪一個(gè)POM模型版本。模型本身的版本很少改變 ,雖然如此,但它仍然是必不可少的,這是為了當(dāng)Maven引入了新的特性或者其他模型變更的時(shí)候,確保穩(wěn)定性。 --> <modelVersion>4.0.0</modelVersion> <!-- 項(xiàng)目的全球唯一標(biāo)識(shí)符,通常使用全限定的包名區(qū)分該項(xiàng)目和其他項(xiàng)目。并且構(gòu)建時(shí)生成的路徑也是由此生成, 如com.mycompany.app生成的相對(duì)路徑為:/com/mycompany/app --> <groupId>com.demo</groupId> <!-- 構(gòu)件的標(biāo)識(shí)符,它和group ID一起唯一標(biāo)識(shí)一個(gè)構(gòu)件。換句話(huà)說(shuō),你不能有兩個(gè)不同的項(xiàng)目擁有同樣的artifact ID和groupID;在某個(gè)特定的group ID下,artifact ID也必須是唯一的。構(gòu)件是項(xiàng)目產(chǎn)生的或使用的一個(gè)東西,Maven為項(xiàng)目產(chǎn)生的構(gòu)件包括:JARs,源碼,二進(jìn)制發(fā)布和WARs等。 --> <artifactId>bpmnProject</artifactId> <!-- 項(xiàng)目當(dāng)前版本,格式為:主版本.次版本.增量版本-限定版本號(hào) --> <version>1.0.0-SNAPSHOT</version> <!-- 項(xiàng)目產(chǎn)生的構(gòu)件類(lèi)型,例如jar、war、ear、pom。插件可以創(chuàng)建他們自己的構(gòu)件類(lèi)型,所以前面列的不是全部構(gòu)件類(lèi)型 --> <packaging>war</packaging> <!-- 項(xiàng)目的名稱(chēng), Maven產(chǎn)生的文檔用 --> <name>banseon-maven</name> <!-- 項(xiàng)目主頁(yè)的URL, Maven產(chǎn)生的文檔用 --> <url>http://www.example.com</url> <!-- 項(xiàng)目的詳細(xì)描述, Maven 產(chǎn)生的文檔用。 當(dāng)這個(gè)元素能夠用HTML格式描述時(shí)(例如,CDATA中的文本會(huì)被解析器忽略,就可以包含HTML標(biāo)簽), 不鼓勵(lì)使用純文本描述。如果你需要修改產(chǎn)生的web站點(diǎn)的索引頁(yè)面,你應(yīng)該修改你自己的索引頁(yè)文件,而不是調(diào)整這里的文檔。 --> <description>A maven project to study maven</description> <!-- 描述了這個(gè)項(xiàng)目構(gòu)建環(huán)境中的前提條件 --> <prerequisites> <!-- 構(gòu)建該項(xiàng)目或使用該插件所需要的Maven的最低版本 --> <maven></maven> </prerequisites> <!-- 項(xiàng)目的問(wèn)題管理系統(tǒng)(Bugzilla,Jira,Scarab,或任何你喜歡的問(wèn)題管理系統(tǒng))的名稱(chēng)或URL,本例為Jira --> <issueManagement> <!-- 問(wèn)題管理系統(tǒng)(例如Jira)的名字 --> <system>jira</system> <!-- 該項(xiàng)目使用的問(wèn)題管理系統(tǒng)的URL --> <url>http://jira/baidu.com/banseon</url> </issueManagement> <!-- 項(xiàng)目持續(xù)集成信息 --> <ciManagement> <!-- 持續(xù)集成系統(tǒng)的名字,例如continuum --> <system></system> <!-- 該項(xiàng)目使用的持續(xù)集成系統(tǒng)的URL(如果持續(xù)集成系統(tǒng)有web接口的話(huà)) --> <url></url> <!-- 構(gòu)建完成時(shí),需要通知的開(kāi)發(fā)者/用戶(hù)的配置項(xiàng)。包括被通知者信息和通知條件(錯(cuò)誤,失敗,成功,警告) --> <notifiers> <!-- 配置一種方式,當(dāng)構(gòu)建中斷時(shí),以該方式通知用戶(hù)/開(kāi)發(fā)者 --> <notifier> <!-- 傳送通知的途徑 --> <type></type> <!-- 發(fā)生錯(cuò)誤時(shí)是否通知 --> <sendOnError></sendOnError> <!-- 構(gòu)建失敗時(shí)是否通知 --> <sendOnFailure></sendOnFailure> <!-- 構(gòu)建成功時(shí)是否通知 --> <sendOnSuccess></sendOnSuccess> <!-- 發(fā)生警告時(shí)是否通知 --> <sendOnWarning></sendOnWarning> <!-- 不贊成使用,通知發(fā)送到哪兒 --> <address></address> <!-- 擴(kuò)展配置項(xiàng) --> <configuration></configuration> </notifier> </notifiers> </ciManagement> <!-- 項(xiàng)目創(chuàng)建年份,4位數(shù)字。當(dāng)產(chǎn)生版權(quán)信息時(shí)需要使用這個(gè)值 --> <inceptionYear></inceptionYear> <mailingLists> <mailingList> <name>Demo</name> <post>banseon@126.com</post> <subscribe>banseon@126.com</subscribe> <unsubscribe>banseon@126.com</unsubscribe> <archive>http://hi.baidu.com/banseon/demo/dev</archive> </mailingList> </mailingLists> <!-- 項(xiàng)目開(kāi)發(fā)者列表 --> <developers> <!-- 某個(gè)項(xiàng)目開(kāi)發(fā)者的信息 --> <developer> <!-- SCM里項(xiàng)目開(kāi)發(fā)者的唯一標(biāo)識(shí) --> <id>HELLO WORLD</id> <!-- 項(xiàng)目開(kāi)發(fā)者的全名 --> <name>banseon</name> <!-- 項(xiàng)目開(kāi)發(fā)者的email --> <email>banseon@126.com</email> <!-- 項(xiàng)目開(kāi)發(fā)者的主頁(yè)url --> <url></url> <!-- 項(xiàng)目開(kāi)發(fā)者在項(xiàng)目中扮演的角色,角色元素描述了各種角色 --> <roles> <role>Project Manager</role> <role>Architect</role> </roles> <!-- 項(xiàng)目開(kāi)發(fā)者所屬的組織 --> <organization>http://hi.baidu.com/banseon</organization> <!-- 項(xiàng)目開(kāi)發(fā)者屬性,如即時(shí)消息如何處理等 --> <properties> <dept> No </dept> </properties> <!-- 項(xiàng)目開(kāi)發(fā)者所在時(shí)區(qū), -11到12范圍內(nèi)的整數(shù)。 --> <timezone>-5</timezone> </developer> </developers> <!-- 項(xiàng)目的其他貢獻(xiàn)者列表 --> <contributors> <!-- 項(xiàng)目的其他貢獻(xiàn)者。參見(jiàn)developers/developer元素 --> <contributor> <name></name> <email></email> <url></url> <organization></organization> <organizationUrl></organizationUrl> <roles></roles> <timezone></timezone> <properties></properties> </contributor> </contributors> <!-- 該元素描述了項(xiàng)目所有License列表。 應(yīng)該只列出該項(xiàng)目的license列表,不要列出依賴(lài)項(xiàng)目的 license列表。如果列出多個(gè)license,用戶(hù)可以選擇它們中的一個(gè)而不是接受所有l(wèi)icense。 --> <licenses> <!-- 描述了項(xiàng)目的license,用于生成項(xiàng)目的web站點(diǎn)的license頁(yè)面,其他一些報(bào)表和validation也會(huì)用到該元素。 --> <license> <!-- license用于法律上的名稱(chēng) --> <name> Apache 2 </name> <!-- 官方的license正文頁(yè)面的URL --> <url> http://www.baidu.com/banseon/LICENSE-2.0.txt </url> <!-- 項(xiàng)目分發(fā)的主要方式: repo,可以從Maven庫(kù)下載 manual, 用戶(hù)必須手動(dòng)下載和安裝依賴(lài) --> <distribution> repo </distribution> <!-- 關(guān)于license的補(bǔ)充信息 --> <comments> A business-friendly OSS license </comments> </license> </licenses> <!-- SCM(Source Control Management)標(biāo)簽允許你配置你的代碼庫(kù),供Maven web站點(diǎn)和其它插件使用。 --> <scm> <!-- SCM的URL,該URL描述了版本庫(kù)和如何連接到版本庫(kù)。欲知詳情,請(qǐng)看SCMs提供的URL格式和列表。該連接只讀。 --> <connection> scm:svn:http://svn.baidu.com/banseon/maven/banseon/banseon-maven2-trunk(dao-trunk) </connection> <!-- 給開(kāi)發(fā)者使用的,類(lèi)似connection元素。即該連接不僅僅只讀 --> <developerConnection> scm:svn:http://svn.baidu.com/banseon/maven/banseon/dao-trunk </developerConnection> <!-- 當(dāng)前代碼的標(biāo)簽,在開(kāi)發(fā)階段默認(rèn)為HEAD --> <tag /> <!-- 指向項(xiàng)目的可瀏覽SCM庫(kù)(例如ViewVC或者Fisheye)的URL。 --> <url> http://svn.baidu.com/banseon </url> </scm> <!-- 描述項(xiàng)目所屬組織的各種屬性。Maven產(chǎn)生的文檔用 --> <organization> <!-- 組織的全名 --> <name> demo </name> <!-- 組織主頁(yè)的URL --> <url> http://www.baidu.com/banseon </url> </organization> <!-- 構(gòu)建項(xiàng)目需要的信息 --> <build> <!-- 該元素設(shè)置了項(xiàng)目源碼目錄,當(dāng)構(gòu)建項(xiàng)目的時(shí)候,構(gòu)建系統(tǒng)會(huì)編譯目錄里的源碼。該路徑是相對(duì)于pom.mxl的相對(duì)路徑。 --> <sourceDirectory></sourceDirectory> <!-- 該元素設(shè)置了項(xiàng)目腳本源碼目錄,該目錄和源碼目錄不同,絕大多數(shù)情況下,該目錄下的內(nèi)容會(huì)被拷貝到輸出目錄(因?yàn)槟_本是被解釋的,而不是被編譯的) --> <scriptSourceDirectory></scriptSourceDirectory> <!-- 該元素設(shè)置了項(xiàng)目單元測(cè)試使用的源碼目錄,當(dāng)測(cè)試項(xiàng)目的時(shí)候,構(gòu)建系統(tǒng)會(huì)編譯目錄里的源碼,該路徑是相對(duì)于pom.xml的相對(duì)路徑 --> <testSourceDirectory></testSourceDirectory> <!-- 被編譯過(guò)的應(yīng)用程序class文件存放的目錄 --> <outputDirectory></outputDirectory> <!-- 被編譯過(guò)的測(cè)試class文件存放的目錄 --> <testOutputDirectory></testOutputDirectory> <!-- 使用來(lái)自該項(xiàng)目的一系列構(gòu)建擴(kuò)展 --> <extensions> <!-- 描述使用到的構(gòu)建擴(kuò)展 --> <extension> <!-- 構(gòu)建擴(kuò)展的groupId --> <groupId></groupId> <!-- 構(gòu)建擴(kuò)展的artifactId --> <artifactId></artifactId> <!-- 構(gòu)件擴(kuò)展的版本 --> <version></version> </extension> </extensions> <!-- 使用的插件列表 --> <plugins> <!-- plugin元素包含描述插件所需要的信息 --> <plugin> <!-- 插件在倉(cāng)庫(kù)里的groupId --> <groupId></groupId> <!-- 插件在倉(cāng)庫(kù)里的artifactId --> <artifactId></artifactId> <!-- 被使用的插件的版本(或者版本范圍) --> <version></version> <!-- 是否從該插件下載Maven擴(kuò)展(例如打包或類(lèi)型處理器),由于性能原因,只有在真需要下載時(shí),該元素才被設(shè)置成enabled --> <extensions></extensions> <!-- 在構(gòu)建生命周期中執(zhí)行一組目標(biāo)的配置,每個(gè)目標(biāo)可能有不同的配置 --> <executions> <!-- execution元素包含了插件執(zhí)行需要的信息 --> <execution> <!-- 執(zhí)行目標(biāo)的標(biāo)識(shí)符,用于標(biāo)識(shí)構(gòu)建過(guò)程的目標(biāo),或者匹配繼承過(guò)程中需要合并的目標(biāo) --> <id></id> <!-- 綁定了目標(biāo)的構(gòu)建生命周期階段,如果省略,目標(biāo)會(huì)被綁定到源數(shù)據(jù)的默認(rèn)階段 --> <phase></phase> <!-- 配置的執(zhí)行目標(biāo) --> <goals></goals> <!-- 配置是否被傳播到子pom --> <inherited></inherited> <!-- 作為DOM對(duì)象的配置 --> <configuration></configuration> </execution> </executions> <!-- 項(xiàng)目中引入插件所需要的配置 --> <dependencies> <!-- 參見(jiàn)dependencied/dependency元素 --> <dependency> </dependency> </dependencies> <!-- 任何配置是否被傳播到子pom --> <inherited></inherited> <!-- 作為pom對(duì)象的配置 --> <configuration></configuration> </plugin> </plugins> </build> </project>
感謝各位的閱讀,以上就是“maven工程的pom文件有什么作用”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)maven工程的pom文件有什么作用這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
分享題目:maven工程的pom文件有什么作用
文章路徑:http://sd-ha.com/article24/jgsjce.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、網(wǎng)站維護(hù)、虛擬主機(jī)、ChatGPT、服務(wù)器托管、商城網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)