IDEA中的打包Build Artifacts圖文詳解
現(xiàn)在大家是不是很少遇見(jiàn)自己打包部署項(xiàng)目了,因?yàn)楝F(xiàn)在都是自動(dòng)化部署,所以基本大的公司都沒(méi)有了這一步。當(dāng)項(xiàng)目開(kāi)發(fā)完畢,需要對(duì)外發(fā)布時(shí),我們就會(huì)用到IDEABuild Artifacts功能,那么如果在idea中打包呢。
在沒(méi)有創(chuàng)建Artifact時(shí),菜單“Build”|"Build Artifacts..."是灰化的,不可用。所以,第一步是進(jìn)入project structure創(chuàng)建Artifact。

選中"Artifacts",點(diǎn)擊中間上面的“+”號(hào),選中“From modules with dependencies...”如下圖:

彈出如下窗口:

Module下拉框中選中需要打包的Module,
Main Class框中選擇主類(lèi)。
JAR files from libraries有兩個(gè)選項(xiàng):
1、extract to the target JAR:表示將第三方JAR包內(nèi)容都解壓并統(tǒng)一打包到最后生成的JAR包。
2、copy to the output directory and link via menifest:表示將第三方JAR包內(nèi)容拷貝到輸出目錄。
如果你只是希望打包Module本身,可以選擇“extract to the target JAR”;如果希望打包Module的同時(shí),也將第三方的JAR一起打包,可以選擇“copy to the output directory and link via menifest”。因?yàn)槲覀兿M3值谌絁AR包的獨(dú)立性。
Directory for META-INF/MENIFECT.MF
這里是輸入一個(gè)路徑,用于保存MENIFECT.MF文件,使用默認(rèn)的路徑即可,也可以自己輸入一個(gè)任意的路徑。如果后面提示:

就可以選擇換一個(gè)路徑,或?qū)⒃撀窂较碌腗ENIFEST.MF文件刪除后重試。
Include tests
如果選中,打包時(shí)將會(huì)把測(cè)試用例(Tests)類(lèi)也打包進(jìn)去。通常不用選中。
設(shè)置好的創(chuàng)建如下圖:

點(diǎn)擊OK按鈕,進(jìn)入下一個(gè)頁(yè)面:

Name 輸入框中可以修改Artifact的名稱(chēng)(不是生成的jar文件的名稱(chēng))。
如果希望修改生成的jar文件的名稱(chēng),需要右鍵點(diǎn)擊Output Layout框中的根節(jié)點(diǎn),選擇rename,如下圖:

Output Layout 中,你可以添加或刪除需要打包的內(nèi)容。這里需要重點(diǎn)說(shuō)一下:
1. 只打包Module本身
就可以刪除第三方的JAR ,刪除后的情況大致如下:

這時(shí),打包后的JAR包中,就只包含這個(gè)Module的class,不會(huì)包含第三方JAR
2.打包全部
也就是說(shuō)希望打包自己編寫(xiě)的代碼以及第三方的JAR包,這時(shí),建議點(diǎn)擊下圖箭頭所指的圖標(biāo),創(chuàng)建一個(gè)libs目錄,將第三方的JAR包拷貝到libs目錄。

創(chuàng)建好libs目錄,并將第三方JAR包拖動(dòng)到libs目錄下,如下圖所示:

這樣就設(shè)置完成了。點(diǎn)擊OK按鈕完成設(shè)置。
注意:這里只是完成了Artifacts的設(shè)置,并沒(méi)有進(jìn)行實(shí)際的打包動(dòng)作。這時(shí),需要點(diǎn)擊“Build”|"Build Artifacts..."菜單,

選擇你剛剛創(chuàng)建的Artifact名稱(chēng),并點(diǎn)擊build菜單,才能完成打包動(dòng)作,如下圖:

打包完成后,可以在工程目錄的out\artifacts目錄下,看到打包的結(jié)果。
到此這篇關(guān)于IDEA中的打包Build Artifacts詳解的文章就介紹到這了,更多相關(guān)IDEA中的打包Build Artifacts詳解內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
java實(shí)現(xiàn)微信小程序加密數(shù)據(jù)解密算法
這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)微信小程序加密數(shù)據(jù)解密算法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-09-09
springboot 運(yùn)行 jar 包讀取外部配置文件的問(wèn)題
這篇文章主要介紹了springboot 運(yùn)行 jar 包讀取外部配置文件,本文主要描述linux系統(tǒng)執(zhí)行jar包讀取jar包同級(jí)目錄的外部配置文件,主要分為兩種方法,每種方法通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2021-07-07
JavaEE多線(xiàn)程中阻塞隊(duì)列的項(xiàng)目實(shí)踐
本文主要介紹了JavaEE多線(xiàn)程中阻塞隊(duì)列的項(xiàng)目實(shí)踐,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-09-09
elasticsearch開(kāi)發(fā)中data-streams使用解析
這篇文章主要為大家介紹了elasticsearch開(kāi)發(fā)中data-streams使用解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08
java利用JAXB實(shí)現(xiàn)對(duì)象和xml互相轉(zhuǎn)換方法與實(shí)例詳解
這篇文章主要介紹了java利用JAXB實(shí)現(xiàn)對(duì)象和xml互相轉(zhuǎn)換方法與實(shí)例詳解,需要的朋友可以參考下2020-02-02

