摘要:一用途在創(chuàng)建項(xiàng)目的時(shí)候,可以自己手動(dòng)創(chuàng)建,也可以利用工具創(chuàng)建,也就是來(lái)創(chuàng)建??梢杂脕?lái)創(chuàng)建項(xiàng)目部署項(xiàng)目安裝管理依賴編譯代碼管理二進(jìn)制等。的目的是使項(xiàng)目過(guò)程規(guī)范化自動(dòng)化高效化及強(qiáng)大的可擴(kuò)展性。
一、maven用途
java在創(chuàng)建項(xiàng)目的時(shí)候,可以自己手動(dòng)創(chuàng)建,也可以利用工具創(chuàng)建,也就是maven來(lái)創(chuàng)建。
maven可以用來(lái)創(chuàng)建項(xiàng)目、部署項(xiàng)目、安裝管理依賴、編譯代碼、管理二進(jìn)制等。
maven的目的是使項(xiàng)目過(guò)程規(guī)范化、自動(dòng)化、高效化及強(qiáng)大的可擴(kuò)展性。
利用maven自身和插件獲得代碼檢查報(bào)告、單元測(cè)試覆蓋率、實(shí)現(xiàn)持續(xù)集成
maven最主要的用途是依賴管理,如果不使用maven,項(xiàng)目若需要某個(gè)jar包就需要手動(dòng)下載,而maven則只要在pom配置文件手動(dòng)加depency配置就能自動(dòng)下載需要的依賴的jar包
實(shí)際上,maven一些命令執(zhí)行的類似編譯代碼打包代碼,都是執(zhí)行的java命令,所以,maven就是在執(zhí)行一系列java命令來(lái)完成項(xiàng)目的各種用途
二、maven核心概念
pom
(1)maven配置項(xiàng)目中最基礎(chǔ)的配置文件,在項(xiàng)目根目錄下,一般為pom.xml (2)主要是對(duì)項(xiàng)目相關(guān)信息的一些配置,最常見(jiàn)的就是依賴的引入配置
artifacts
(1)項(xiàng)目將會(huì)生成的一些包或者二進(jìn)制等文件 (2)Artifacts指的就是項(xiàng)目的項(xiàng)目發(fā)行時(shí)產(chǎn)生的一些文件
repositories
(1)存儲(chǔ)artifact工具的倉(cāng)庫(kù)或者包的倉(cāng)庫(kù),分為本地和遠(yuǎn)程倉(cāng)庫(kù)
build lifecycle
(1)每個(gè)任務(wù)task執(zhí)行有一個(gè)順序的鏈條phase,比如mvn install任務(wù)執(zhí)行之前會(huì)先執(zhí)行其他的phase(具體的順序的phase鏈條可以自行搜索) (2)幾個(gè)重要的順序的phase鏈條: validate 驗(yàn)證項(xiàng)目是否正確以及必須的信息是否可用 compile 編譯源代碼 test 測(cè)試編譯后的代碼,即執(zhí)行單元測(cè)試代碼 package 打包編譯后的代碼,在target目錄下生成package文件 integration-test 處理package以便需要時(shí)可以部署到集成測(cè)試環(huán)境 verify 檢驗(yàn)package是否有效并且達(dá)到質(zhì)量標(biāo)準(zhǔn) install 安裝package到本地倉(cāng)庫(kù),方便本地其它項(xiàng)目使用 deploy 部署,拷貝最終的package到遠(yuǎn)程倉(cāng)庫(kù)和替他開發(fā)這或項(xiàng)目共享,在集成或發(fā)布環(huán)境完成
goal
(1)代表某一個(gè)具體的task,比如mvn install (2)執(zhí)行某個(gè)goal時(shí)候,必須按照順序執(zhí)行前邊的phase才行,比如mvn install執(zhí)行的時(shí)候,先執(zhí)行validatecompile estpackageintegration-testverify這些phase后,再執(zhí)行install,這是build lifecycle規(guī)則三、maven配置
setting.xml
(1)maven工具本身的配置文件是setting.xml,可以配置maven的repository倉(cāng)庫(kù)地址,鏡像地址等,一般是在maven/conf/setting.xml中
pom.xml
(1)setting.xml主要是對(duì)maven的配置,那么pom.xml就是對(duì)要?jiǎng)?chuàng)建的項(xiàng)目的相關(guān)配置,可以配置項(xiàng)目的依賴,jdk版本等,一般是在項(xiàng)目的根目錄下,都會(huì)有一個(gè)pom.xml文件
關(guān)于maven配置遠(yuǎn)程鏡像(主要是為了下載需要的依賴jar包等):
(1)現(xiàn)在pom.xml文件中引入要使用的依賴 (2)setting.xml中查找鏡像標(biāo)簽四、maven常用的命令,因?yàn)閙aven原本的遠(yuǎn)程倉(cāng)庫(kù)地址鏡像是國(guó)外的,下載需要的jar包速度比較慢,因此可以修改mirrors為中國(guó)的鏡像地址加快upload速度,一般使用阿里的: alimaven aliyun maven http://maven.aliyun.com/nexus/content/groups/public/ central
mvn archetype:generate -DgroupId=otowa.user.dao -DartifactId=user-dao -Dversion=0.01-SNAPSHOT
—— 創(chuàng)建項(xiàng)目
mvn compile
—— 編譯項(xiàng)目
mvn package
—— 打包項(xiàng)目
mvn deploy
—— 部署項(xiàng)目
mvn install
—— 安裝jar包到本地倉(cāng)庫(kù)repositories
mvn clean
—— 對(duì)項(xiàng)目進(jìn)行清理,清理的過(guò)程中會(huì)刪除刪除target目錄下編譯的內(nèi)容。
其他常用命令參考:https://www.cnblogs.com/wkrbk...
五、參考鏈接https://www.trinea.cn/android...
https://www.cnblogs.com/xdp-g...
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/77692.html
摘要:項(xiàng)目構(gòu)建基礎(chǔ)從屬于筆者的現(xiàn)代開發(fā)基礎(chǔ)系列文章,介紹了的歷史背景與多種構(gòu)建工具對(duì)比,以及的基本配置安裝與使用本文涉及的參考資料聲明在學(xué)習(xí)與實(shí)踐資料索引以及學(xué)習(xí)與資料索引。 Maven 項(xiàng)目構(gòu)建基礎(chǔ)從屬于筆者的現(xiàn)代 Java 開發(fā)基礎(chǔ)系列文章,介紹了 Maven 的歷史背景與多種構(gòu)建工具對(duì)比,以及 Maven 的基本配置安裝與使用;本文涉及的參考資料聲明在 Java 學(xué)習(xí)與實(shí)踐資料索引以及...
摘要:時(shí)間年月日星期二說(shuō)明本文部分內(nèi)容均來(lái)自慕課網(wǎng)。項(xiàng)目一個(gè)項(xiàng)目代表一個(gè)正在構(gòu)建的組件比如一個(gè)文件,當(dāng)構(gòu)建啟動(dòng)后,會(huì)基于實(shí)例化一個(gè)類,并且能夠通過(guò)變量使其隱式可用。任務(wù)動(dòng)作定義了一個(gè)最小的工作單元。 時(shí)間:2017年05月16日星期二說(shuō)明:本文部分內(nèi)容均來(lái)自慕課網(wǎng)。@慕課網(wǎng):http://www.imooc.com教學(xué)示例源碼:無(wú)個(gè)人學(xué)習(xí)源碼:https://github.com/zccod...
摘要:例如,可以提供更改日志用源碼管理工具生成交叉引用郵件列表依賴清單單元測(cè)試報(bào)告含覆蓋率提供開發(fā)過(guò)程的最佳實(shí)踐指南通過(guò)收集現(xiàn)行的開發(fā)最佳實(shí)踐,來(lái)指導(dǎo)用構(gòu)建的項(xiàng)目。 本文大約1026個(gè)字,閱讀時(shí)間4分鐘。 主要介紹了Maven名字的由來(lái)、Maven產(chǎn)生的背景和Maven的主要功能。 問(wèn)題:Maven是啥? 大多數(shù)人都用Maven來(lái)管理Java項(xiàng)目的依賴,這個(gè)應(yīng)該是Maven的主要功能沒(méi)跑了,...
摘要:是最流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)之一,在應(yīng)用方面,是最好的,關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)應(yīng)用軟件。是一種關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),關(guān)系數(shù)據(jù)庫(kù)將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個(gè)大倉(cāng)庫(kù)內(nèi),這樣就增加了速度并提高了靈活性。 本章主要是對(duì)MyBatis-Plus的初步介紹,包括一些背景知識(shí)、環(huán)境搭建、初步使用等知識(shí)和例子。對(duì)于背景知識(shí),主要包含對(duì)MyBatis-Plus的特性介紹、為什么使用MyB...
摘要:軟件項(xiàng)目的管理就會(huì)變得簡(jiǎn)單很多。比如說(shuō)的驅(qū)動(dòng)程序,,在是獲取不到的,就需要手工上傳到里是倉(cāng)庫(kù)組,在里沒(méi)有這個(gè)概念,是特有的。 什么是Maven Maven是一個(gè)采用純Java編寫的開源項(xiàng)目管理工具, Maven采用了一種被稱之為Project Object Model (POM)概念來(lái)管理項(xiàng)目,所有的項(xiàng)目配置信息都被定義在一個(gè)叫做POM.xml的文件中.. Maven是一款跨平臺(tái)的項(xiàng)目...
閱讀 1274·2021-11-23 09:51
閱讀 1635·2021-11-16 11:45
閱讀 4060·2021-10-09 09:43
閱讀 2694·2021-07-22 16:47
閱讀 953·2019-08-27 10:55
閱讀 3456·2019-08-26 17:40
閱讀 3098·2019-08-26 11:39
閱讀 3238·2019-08-23 18:39