Maven-使用idea創(chuàng)建Maven項(xiàng)目

1. IDEA中使用Maven

如果使用了 IntelliJ IDEA ,可以不用去額外下載 Maven,直接使用 IDEA 中自帶的 Maven 插件即可。
IntelliJ IDEA 中自帶的 Maven 插件在 \ideaIU-2019.2.4.win\plugins\maven\lib\maven3

2. IDEA中Maven的配置

IDEA 中,Maven 的配置在 File->Settings->Build,Execution,Deployment->Build Tools->Maven

3. JavaSE工程創(chuàng)建

首先在創(chuàng)建一個(gè)工程時(shí),選擇 Maven 工程:

如果勾選上 Create from archetype ,則表示可以根據(jù)一個(gè)項(xiàng)目骨架(項(xiàng)目模板)來(lái)創(chuàng)建一個(gè)新的工程,不過(guò),如果只是創(chuàng)建 JavaSE 項(xiàng)目,則不用選擇項(xiàng)目骨架。直接 Next 即可。然后填入項(xiàng)目的坐標(biāo),即 groupId 和 artifactId。

填完之后,直接 Next 即可。這樣,我們就會(huì)獲取一個(gè) JavaSE 工程,項(xiàng)目結(jié)構(gòu)和你用命令創(chuàng)建出來(lái)的項(xiàng)目一模一樣。

4. JavaWeb工程創(chuàng)建

在 IDEA 中創(chuàng)建 Maven Web 項(xiàng)目,有兩種思路:

  • 首先創(chuàng)建一個(gè) JavaSE 項(xiàng)目,然后手動(dòng)將 JavaSE 項(xiàng)目改造成一個(gè) JavaWeb 項(xiàng)目
  • 創(chuàng)建項(xiàng)目時(shí)選擇項(xiàng)目骨架,骨架就選擇 webapp

兩種方式中,推薦使用第一種方式。

方式一:改造JavaSE項(xiàng)目

這種方式,首先創(chuàng)建一個(gè) JavaSE 項(xiàng)目,創(chuàng)建步驟和上面的一致。
項(xiàng)目創(chuàng)建完成后,首先修改 pom.xml ,配置項(xiàng)目的打包格式為 war 包。 這樣,IDEA 就知道當(dāng)前項(xiàng)目是一個(gè) Web 項(xiàng)目:

然后,選中 JavaSE 工程,右鍵單擊,選擇 Open Module Settings,或者直接按 F4,然后選擇 Web,如下圖:

接下來(lái),在 webapp 目錄中,添加 web.xml 文件。

注意,一定要修改 web.xml 文件位置:


配置完成后,點(diǎn)擊 OK 退出。
項(xiàng)目創(chuàng)建完成后,接下來(lái)就是部署了。
部署,首先點(diǎn)擊 IDEA 右上角的 Edit Configurations:

然后,配置 Tomcat:

接下來(lái)選擇 Deployment 選項(xiàng)卡,配置要發(fā)布的項(xiàng)目:

最后,點(diǎn)擊 IDEA 右上角的三角符號(hào),啟動(dòng)項(xiàng)目。

方式二:通過(guò)webapp骨架直接創(chuàng)建

這種方式比較簡(jiǎn)單,基本上不需要額外的配置,項(xiàng)目創(chuàng)建完成后,就是一個(gè) web 項(xiàng)目。只需要我們?cè)趧?chuàng)建項(xiàng)目時(shí),選擇 webapp 骨架即可。

選擇骨架之后,后面的步驟和前文一致。
項(xiàng)目創(chuàng)建成功后,只有 webapp 目錄,這個(gè)時(shí)候,自己手動(dòng)創(chuàng)建 java 和 resources 目錄,創(chuàng)建完成后,右鍵單擊,選擇 Mark Directory As,將 java 目錄標(biāo)記為 sources root,將 resources 目錄標(biāo)記為 resources root 即可。
凡是在 IDEA 右下角看到了 Enable Auto Import 按鈕,一定點(diǎn)一下

5. 創(chuàng)建聚合項(xiàng)目

當(dāng)項(xiàng)目較大需要多模塊時(shí),我們可以使用Maven創(chuàng)建聚合項(xiàng)目。
例如我們將演示如何創(chuàng)建一個(gè)如下結(jié)構(gòu)的聚合項(xiàng)目:
Weixin
? ? |
? ? |-- weixin-web(web項(xiàng)目)
? ? |-- weixin-common (jar項(xiàng)目)
? ? |-- weixin-service (jar項(xiàng)目)

5.1 創(chuàng)建父工程

依然是New > Project:

選擇Maven工程:

創(chuàng)建父工程Create from archeType不要勾選,直接點(diǎn)擊Next按鈕進(jìn)入下一步:

指定GroupId和ArtifactId,點(diǎn)擊Next進(jìn)入下一步:

指定項(xiàng)目名稱,完成父工程的創(chuàng)建

5.2 創(chuàng)建web子模塊工程

鼠標(biāo)放在你的項(xiàng)目名稱上右鍵New,選擇Module:

勾選Create from archeType,使用maven-archeType-webapp項(xiàng)目骨架構(gòu)建項(xiàng)目:

點(diǎn)擊Next進(jìn)入下一步,會(huì)帶出父工程信息,需填寫本模塊工程的ArtifactId:

點(diǎn)擊Next進(jìn)入下一步,會(huì)展示出Maven信息,注意審查與你本地Maven的配置信息是否匹配:

點(diǎn)擊Next進(jìn)入下一步,指定模塊工程名稱,idea會(huì)默認(rèn)給出1個(gè),如果不希望使用默認(rèn)工程名,可自行更改:

點(diǎn)擊finish完成web模塊工程的創(chuàng)建,這時(shí)IDEA會(huì)自動(dòng)為我們根據(jù)上面選擇的項(xiàng)目骨架模版創(chuàng)建項(xiàng)目:

構(gòu)建成功后,pom.xml文件會(huì)添加項(xiàng)目信息如下:

同時(shí)原父工程的pom.xml文件也會(huì)自動(dòng)添加打包方式、模塊等信息:

父工程的src目錄是沒(méi)有用的,直接刪除就可以:

點(diǎn)擊file --> Project Structure... 檢驗(yàn)自動(dòng)構(gòu)建是否完整

可以重新指定(如果需要的話)項(xiàng)目的SDK,

注意web項(xiàng)目應(yīng)該有Web標(biāo)識(shí),且會(huì)自動(dòng)生成web.xml文件,如果沒(méi)有說(shuō)明IDEA自動(dòng)構(gòu)建實(shí)際沒(méi)有成功

需手動(dòng)添加或者刪了重新創(chuàng)建

創(chuàng)建java目錄:在web項(xiàng)目的main目錄下創(chuàng)建一個(gè)java目錄

配置此新建目錄為源文件目錄,點(diǎn)擊file-->Projuec Structure... --> Modules 指定剛剛創(chuàng)建的java目錄為Sources(不同類型指定成功后文件夾顏色會(huì)變),點(diǎn)擊Apply-->ok

同理可以創(chuàng)建test目錄用于測(cè)試,并將test目錄指定為test

5.3 創(chuàng)建jar子模塊項(xiàng)目

同樣點(diǎn)擊項(xiàng)目名稱右鍵new-->Module

選擇Maven項(xiàng)目,勾選Create from archeType,使用maven-archeType-quickstart項(xiàng)目骨架構(gòu)建項(xiàng)目:

點(diǎn)擊Next進(jìn)入下一步,指定ArtifactId:

點(diǎn)擊Next,進(jìn)入下一步:

指定模塊名稱,點(diǎn)擊Finish完成創(chuàng)建,等待IDEA自動(dòng)構(gòu)建原型配置信息:

子模塊創(chuàng)建完畢后IDEA會(huì)自動(dòng)為我們生成一個(gè)名稱為App的class類及對(duì)應(yīng)的測(cè)試應(yīng)力,如果不需要可直接刪除

至此項(xiàng)目就創(chuàng)建完了

參考文獻(xiàn):https://mp.weixin.qq.com/s/9aMRFEXbh0-usVE96uZ8Ag

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容