奶头挺立呻吟高潮av全片,成人试看120秒体验区,性欧美极品v,A片高潮抽搐揉捏奶头视频

java語(yǔ)言

Java的項(xiàng)目構(gòu)建工具M(jìn)aven的使用教程

時(shí)間:2025-05-08 01:23:31 java語(yǔ)言 我要投稿
  • 相關(guān)推薦

Java的項(xiàng)目構(gòu)建工具M(jìn)aven的使用教程

  一、Maven是什么

  Maven是一個(gè)用java開發(fā)的項(xiàng)目構(gòu)建工具, 它能使項(xiàng)目構(gòu)建過程中的編譯、測(cè)試、發(fā)布、文檔自動(dòng)化, 大大減輕了程序員部署負(fù)擔(dān)。

  二、安裝Maven

  安裝maven非常簡(jiǎn)單,訪問Maven官方頁(yè)下載即可:http://maven.apache.org/download.cgi

  下載完后配置M2_HOME環(huán)境變量, 然后終端運(yùn)行mvn --version, 看到正確的輸出提示,Maven就安裝完成了。

  三、Maven基本概念

  Maven的核心思想是POM, 即Project Object Model(項(xiàng)目對(duì)象模型)。POM文件是以XML文件的形式描述一個(gè)Maven項(xiàng)目所用到的資源(源碼、依賴、測(cè)試等)。下圖描述了POM文件的結(jié)構(gòu), 以及Maven是如何調(diào)用POM文件的。

  當(dāng)執(zhí)行一條Maven命令時(shí), 會(huì)傳入一個(gè)pom文件, Maven會(huì)在該pom里面的描述的資源上執(zhí)行

  POM文件:

  4.0.0....................................................................................

  modelVersion是POM模型版本, 4.0.0支持Maven2和3

  Maven Coordinates(Maven坐標(biāo))

  (1)groupId: 它是一個(gè)組織或者項(xiàng)目的唯一ID, 大多數(shù)情況下會(huì)使用項(xiàng)目的java包的根名作為groupID, 例如com.pastqing

  (2)artifactId:它是正在構(gòu)建的項(xiàng)目名稱, 例如一個(gè)支付系統(tǒng)artifactId是web-pay。artifactId 是Maven倉(cāng)庫(kù)中g(shù)roupId目錄下的子目錄名

  (3)version:顧名思義項(xiàng)目發(fā)行的版本號(hào)

  以上三項(xiàng)都是構(gòu)建結(jié)果名稱的一部分, 在項(xiàng)目構(gòu)建后會(huì)生成一個(gè)jar包,位于Maven倉(cāng)庫(kù)的路徑就是MAVEN_REPO/com/pastqing/web-pay/1.0/web-pay-1.0.jar

  四、一個(gè)用Maven構(gòu)建的Hello World java項(xiàng)目

  利用Maven插件archetype構(gòu)建一個(gè)項(xiàng)目:

  在終端中打開工作目錄

  運(yùn)行命令:

  mvn archetype:generate

  , 第一次運(yùn)行時(shí)比較慢,原因是第一次需要從Maven中央倉(cāng)庫(kù)中下載相關(guān)項(xiàng)目原型。下載完畢后,會(huì)選擇項(xiàng)目模型,以及輸入groupId, artifactId,version等,構(gòu)建完畢后會(huì)有成功提示。

  打包項(xiàng)目:切換到項(xiàng)目根目錄,運(yùn)行mvn package。打包成功之后,項(xiàng)目會(huì)生成一個(gè)target文件夾,里面有生成好的jar文件和class文件。

  運(yùn)行jar文件:

  java -cp target/helloWorld-1.0-SNAPSHOT.jar com.pastqing.App

  至此一個(gè)最簡(jiǎn)單Maven構(gòu)建的java項(xiàng)目就完成了。

  五、一個(gè)用Maven構(gòu)建的java-web項(xiàng)目

  生成一個(gè)web項(xiàng)目與生成java項(xiàng)目基本類似,只是用的模型不同而已。這里不再闡述。下面我們具體說(shuō)說(shuō)如何使用Tomcat或者jetty插件運(yùn)行web項(xiàng)目。這里我們以tomcat舉例。

  Maven Tomcat插件安裝:http://tomcat.apache.org/maven-plugin-2.2/

  我們將如下插件信息加入到web項(xiàng)目中的POM文件中

  org.apache.tomcat.maventomcat6-maven-plugin2.2org.apache.tomcat.maventomcat7-maven-plugin2.2

  這樣我們集成了這個(gè)tomcat的Maven插件, 只需要一個(gè)命令就可以部署、啟動(dòng)服務(wù)了。命令如下:

  mvn tomcat:run

  (tomcat6)

  mvn tomcat7:run

  (tomcat7)

  使用tomcat Maven插件自動(dòng)部署到外部tomcat

  以上自動(dòng)部署,會(huì)使用Maven內(nèi)嵌的Tomcat, 下面我們修改POM文件, 讓項(xiàng)目部署到外部的Tomcat中。

  修改項(xiàng)目POM文件,添加服務(wù)器配置信息

  org.apache.tomcat.maventomcat7-maven-plugin2.2http://localhost:8080/manager/texttomcat7adminadmin

  其中server, username, password的值與%Maven_HOME中的setting.xml中的server, username, password一一對(duì)應(yīng)。

  啟動(dòng)外部tomcat, 運(yùn)行命令mvn tomcat7:redeploy

  六、如何用Maven構(gòu)建多模塊項(xiàng)目

  1.父POM

  所有的Maven pom文件都繼承自一個(gè)父POM, 如果沒有指定父pom, 則該pom文件繼承自根POM。pom文件的集成關(guān)系如下圖所示:

  可以讓一個(gè)pom文件顯式地繼承另一個(gè)pom文件。這樣,可以通過修改公共父pom文件的設(shè)置來(lái)修改所有子pom文件的設(shè)置。這里我們使用parent標(biāo)簽來(lái)定義父pom。下面我們具體搭建一個(gè)多模塊Mavne項(xiàng)目

  2.構(gòu)建項(xiàng)目目錄結(jié)構(gòu)

  我們創(chuàng)建一個(gè)maven-web項(xiàng)目, 名字叫EducationCloud, 接下來(lái)我們?cè)陧?xiàng)目目錄下創(chuàng)建幾個(gè)文件夾用來(lái)劃分我們的模塊。它們分別是Education-parent(父模塊), Education-core(業(yè)務(wù)), Education-entity(實(shí)體), Education-web(web服務(wù))

  目錄的劃分可以根據(jù)需要進(jìn)行, 我的劃分如上

  3.修改pom文件

  我們用module標(biāo)簽來(lái)進(jìn)行劃分模塊。打開根目錄下的pom文件, 添加moudle標(biāo)簽。

  <"1.0" encoding="UTF-8">4.0.0com.EducationCloudEducationCloud1.0-SNAPSHOTpomEducation-parentEducation-coreEducation-entityEducation-webEducationCloud

  這里我們說(shuō)下packaging標(biāo)簽:最常見的就是打包為jar, war了。任何一個(gè)Maven項(xiàng)目都需要定義pom文件中的packaging元素, 如果不聲明該元素, 則默認(rèn)打包為jar, 如果定義值為war那么就打包為war包。如果值為pom,那么什么包都不生成(通常用于父模塊)。

  給各個(gè)模塊添加parent標(biāo)簽:

  parent標(biāo)簽用來(lái)定義父POM的坐標(biāo)位置的, 定義如下:

  com.EducationCloudEducationCloud-parent1.0-SNAPSHOT

  groupId, aritfactId, version是常規(guī)表示父pom位置信息的元素, relativePath是表示父pom位置的相對(duì)路徑, 默認(rèn)為../pom.xml, 這里需要注意的是groupId, aritfactId, version必須與父pom文件中的對(duì)應(yīng)起來(lái)

  使用dependencyManagement管理項(xiàng)目所有依賴

  為了統(tǒng)一管理依賴,我們?cè)诟疙?xiàng)目模塊的pom文件中使用dependencyManagement來(lái)聲明項(xiàng)目的所有依賴, 這樣在其他的子項(xiàng)目中引用依賴時(shí)就可以省略版本號(hào)的編寫, 修改起來(lái)也很容易。

  編寫**父項(xiàng)目模塊**educationCloud-parent的pom文件, 添加如下:

  使用pluginManagement管理項(xiàng)目中的Maven插件

  為了統(tǒng)一管理項(xiàng)目中的Maven插件, 如Maven編譯插件, 打包插件等及其配置信息, 在父項(xiàng)目 pom文件中添加pluginManagement來(lái)管理, 這樣在所有子模塊中引用的插件都會(huì)統(tǒng)一處理, 添加如下:

  org.apache.maven.pluginsmaven-complier-plugin3.31.71.7UTF-8

  上面我們添加了maven編譯插件的配置,用jdk1.7編譯, 保存后我們可以在各個(gè)子模塊的Effective pom中看到相應(yīng)的修改。

  使用properties標(biāo)簽定義常量:

  我們將各個(gè)依賴的版本號(hào)定義為不同的常量,這樣方便以后的修改:

  1.73.1.05.1.344.12UTF-8

  引用時(shí)用${jdkVersion}的形式引用即可。

  注,以上操作均可在IDE中操作, 更加方便簡(jiǎn)單。

【Java的項(xiàng)目構(gòu)建工具M(jìn)aven的使用教程】相關(guān)文章:

Java構(gòu)建JSE開發(fā)環(huán)境教程06-17

photoshop鋼筆工具如何使用的教程07-14

Java菜單和工具欄學(xué)習(xí)教程07-26

Java入門教程:如何使用一個(gè)Java06-12

win10畫圖工具使用教程01-25

使用Java編寫GUI對(duì)話框教程講解04-30

構(gòu)建Java程序01-03

PS基礎(chǔ)教程:魔棒工具的使用方法07-21

ps索套工具使用方法圖文教程04-16

主站蜘蛛池模板: 科尔| 平顺县| 博罗县| 弥渡县| 普定县| 滦南县| 石林| 青州市| 盘锦市| 远安县| 黎川县| 泌阳县| 临潭县| 阜康市| 甘南县| 扶余县| 宁化县| 四平市| 丹阳市| 绥棱县| 洮南市| 镇原县| 紫阳县| 垫江县| 酒泉市| 宁远县| 淮滨县| 吕梁市| 集安市| 柳州市| 明溪县| 兴仁县| 龙岩市| 临潭县| 磐安县| 定日县| 荥阳市| 北川| 庆云县| 曲阳县| 安阳市|