maven速學(xué) idea+maven配置 生命周期 插件定義 運行項目

IDEA配置maven 點擊file-settings做如下設(shè)置保存

image.png

項目文件名上右鍵點擊add framework support出現(xiàn)如下
image.png

找到maven 點擊確定 自動將項目改為maven項目 項目目錄結(jié)構(gòu)改變成maven默認(rèn)結(jié)構(gòu)并且聲稱pom文件
如何以maven方式運行項目岂丘?
點擊run-editconfiguration-點擊加號-more33 items找到maven添加如下圖
image.png

在pom.xml中加入jsoup的依賴代碼
<dependencies>
<dependency>

<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.11.2</version>
</dependency>
</dependencies>
保存 idea會自動導(dǎo)入所需依賴 或者 右鍵pom.xml文件 找到下圖更新依賴
image.png

然后點擊運行即可以maven方式運行代碼
運行:在editconfigurarions中exec:java -Dexec.mainClass=MyIndex
運行結(jié)果如下
image.png

運行時候 依賴此插件
image.png

會自動去http://maven.apache.org/plugins/index.html或者http://www.mojohaus.org/plugins.html官網(wǎng)下載
還可以通過pom.xml配置文件運行
在配置文件中加入以下配置節(jié)
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId> //表示包名
<artifactId>exec-maven-plugin</artifactId> //表示插件名
<version>1.6.0</version> //插件版本
<executions>
<execution>
<phase>test</phase> //意思為在某個階段下運行test
<goals>
<goal>java</goal> //使用java命令運行MyIndex程序
</goals>
<configuration>
<mainClass>MyIndex</mainClass> //入口文件
<arguments>
<argument></argument> //可以加入一些參數(shù)
</arguments>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
然后再editconfigurations處刪掉 run command處命令如下圖
image.png

再次運行報錯
image.png

修改editconfigurations處 在run command處加入test 這個和pom配置文件中<phase></phase>節(jié)點內(nèi)容相同
image.png

再次運行 成功如下圖
image.png

為什么需要加入test鉴嗤?
這需要我們了解maven的生命周期
maven生命周期有三個
三個周期
1、 Clean 構(gòu)建之前進行一些清理工作
2弄兜、Default 如編譯扁誓,測試,打包,部署等等瑟枫。
3、Site 生成項目報告指攒,站點慷妙,發(fā)布站點。
譬如 我們執(zhí)行 mvn clean
這就是clean周期中的第二個
clean下面的一些子周期
1允悦、pre-clean 執(zhí)行一些需要在clean之前完成的工作
2膝擂、clean 移除所有上一次生成的文件
3、post-clean 執(zhí)行一些需要在clean之后立刻完成的工作
僅僅去執(zhí)行 mvn clean隙弛,就是清理架馋,不會幫我們編譯
常用的幾個 生命周期
這些為default下面的子生命周期
process-resources 復(fù)制、打包資源文件
compile 編譯項目
test 運行測試(需要配置測試框架全闷。暫不指定)
package 打包成可發(fā)布的格式叉寂,如 JAR 、war
install 將包安裝至本地倉庫
deploy 將最終的包復(fù)制到遠(yuǎn)程的倉庫
(還有很多总珠,可以課后查文檔屏鳍,很多時候我們剛開始使用,然而并用不到)
譬如
mvn compile
首先我們來到項目目錄下
終端進入
項目右鍵copy path
cd 進入項目
dir查看項目下文件 確保有pom.xml文件
如下圖
image.png

接下來執(zhí)行mvn clean
運行結(jié)果如下
image.png

再看下項目目錄下的target目錄不見了
image.png

可以看到執(zhí)行該命令 自動下載了maven的clean插件 也就是說 這個插件是執(zhí)行clean命令這個階段過程中自動去匹配的
接下來我們使用一下process-resources這個生命周期
這個作用是拷貝資源文件
我們在項目目錄resources文件夾下創(chuàng)建個abc.txt文件隨便輸入一些內(nèi)容
目錄如下
image.png

接下來在終端中輸入命令 mvn process-resources
結(jié)果如下
image.png

只將資源文件進行了拷貝 沒有對項目進行編譯
接下來我們編譯項目
編譯之前先clean一下
mvn clean
mvn compile
image.png

執(zhí)行命令可以看見下載maven 的compile插件
image.png

這時候會報出gbk編碼的一個錯誤 原因是我們java代碼中有中文字符 這時我們需要指定編碼格式utf8
在pom配置文件中在加入一個插件
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
在plugins配置中加入 在編譯的時候會讀取該配置
這時入過compiler的version版本過高需要將maven的默認(rèn)倉庫地址更新下
如下圖
image.png

保存配置文件會自動下載一些maven插件
下載成功后執(zhí)行
mvn compile
image.png

這時會發(fā)現(xiàn)錯誤沒了局服,項目目錄結(jié)構(gòu)如下
image.png

可以發(fā)現(xiàn)compile周期 包含了之前的資源文件拷貝打包的過程
接下來我們看下test生命周期
mvn clean
mvn test test代表對項目進行構(gòu)建編譯完成之后對其進行單元測試
出現(xiàn)如下界面 代表執(zhí)行了exec-maven-plugin插件
image.png

為什么執(zhí)行mvn test可以運行項目呢钓瞭?
是因為我們在pom.xml文件中配置了phase字節(jié)
image.png

phase字節(jié)位置可以更改 但是需要確保項目能編譯生成到target目錄下面內(nèi)容
image.png

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市腌逢,隨后出現(xiàn)的幾起案子降淮,更是在濱河造成了極大的恐慌,老刑警劉巖搏讶,帶你破解...
    沈念sama閱讀 219,039評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件佳鳖,死亡現(xiàn)場離奇詭異,居然都是意外死亡媒惕,警方通過查閱死者的電腦和手機系吩,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,426評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來妒蔚,“玉大人穿挨,你說我怎么就攤上這事月弛。” “怎么了科盛?”我有些...
    開封第一講書人閱讀 165,417評論 0 356
  • 文/不壞的土叔 我叫張陵帽衙,是天一觀的道長。 經(jīng)常有香客問我贞绵,道長厉萝,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,868評論 1 295
  • 正文 為了忘掉前任榨崩,我火速辦了婚禮谴垫,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘母蛛。我一直安慰自己翩剪,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,892評論 6 392
  • 文/花漫 我一把揭開白布彩郊。 她就那樣靜靜地躺著前弯,像睡著了一般。 火紅的嫁衣襯著肌膚如雪焦辅。 梳的紋絲不亂的頭發(fā)上博杖,一...
    開封第一講書人閱讀 51,692評論 1 305
  • 那天,我揣著相機與錄音筷登,去河邊找鬼剃根。 笑死,一個胖子當(dāng)著我的面吹牛前方,可吹牛的內(nèi)容都是我干的狈醉。 我是一名探鬼主播,決...
    沈念sama閱讀 40,416評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼惠险,長吁一口氣:“原來是場噩夢啊……” “哼苗傅!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起班巩,我...
    開封第一講書人閱讀 39,326評論 0 276
  • 序言:老撾萬榮一對情侶失蹤渣慕,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后抱慌,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體逊桦,經(jīng)...
    沈念sama閱讀 45,782評論 1 316
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,957評論 3 337
  • 正文 我和宋清朗相戀三年抑进,在試婚紗的時候發(fā)現(xiàn)自己被綠了强经。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,102評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡寺渗,死狀恐怖匿情,靈堂內(nèi)的尸體忽然破棺而出兰迫,到底是詐尸還是另有隱情,我是刑警寧澤炬称,帶...
    沈念sama閱讀 35,790評論 5 346
  • 正文 年R本政府宣布汁果,位于F島的核電站,受9級特大地震影響玲躯,放射性物質(zhì)發(fā)生泄漏须鼎。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,442評論 3 331
  • 文/蒙蒙 一府蔗、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧汞窗,春花似錦姓赤、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,996評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至裹唆,卻和暖如春誓斥,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背许帐。 一陣腳步聲響...
    開封第一講書人閱讀 33,113評論 1 272
  • 我被黑心中介騙來泰國打工劳坑, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人成畦。 一個月前我還...
    沈念sama閱讀 48,332評論 3 373
  • 正文 我出身青樓距芬,卻偏偏與公主長得像,于是被迫代替她去往敵國和親循帐。 傳聞我的和親對象是個殘疾皇子框仔,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,044評論 2 355

推薦閱讀更多精彩內(nèi)容