亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術(shù)文章
文章詳情頁

SpringBoot框架打包體積簡化過程圖解

瀏覽:3日期:2023-05-18 11:12:09

Springboot 框架極大的的簡化了代碼的框架集成開發(fā),想當(dāng)年還是用ssm框架組合時,那種配置令人頭疼,還有Springboot框架自帶tomcat服務(wù)器,簡化了我們的環(huán)境搭建。但是Springboot框架自帶tomcat服務(wù)器也有問題,就是導(dǎo)致一個服務(wù)很大,比如一個簡單的業(yè)務(wù)系統(tǒng),可能因為導(dǎo)入的第三方j(luò)ar包比較多,導(dǎo)致打包出來的jar非常大。假如是內(nèi)網(wǎng)上傳至服務(wù)器,還好,但是假如是在阿里云這種云服務(wù)器,就很考驗帶寬的上行速度了。比如我家50M寬帶,下行很快,但上行才3M,一個jar包100M,我微調(diào)一下重新部署,這中間的時間就是10分鐘去了。所以也在琢磨如何簡化jar包。

下圖是spingboot框架打出來的jar目錄情況

SpringBoot框架打包體積簡化過程圖解

在BOOT-INF下面

SpringBoot框架打包體積簡化過程圖解

這個lib下面就是第三方j(luò)ar包。

下面就來簡化它吧。

我的項目目錄結(jié)構(gòu)如下

course course-common course-pojo course-service course-web

Web中包含springboot框架main啟動入口,打包時,會將 course-common、course-pojo、course-service 這三個服務(wù)打成jar包,集成在 course 最終的jar里lib目錄下。

修改course-web服務(wù)的pom文件

<build> <finalName>mml-course</finalName> <plugins> <plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration> <outputDirectory>E:JARSpre</outputDirectory> <layout>ZIP</layout> <!—- 必須加這句話 --> <includes> <!—- 表示項目打包時集成哪些jar包--> <include> <groupId>com.mml</groupId> <artifactId>mml-course-service</artifactId> </include> <include> <groupId>com.mml</groupId> <artifactId>mml-course-pojo</artifactId> </include> <include> <groupId>com.mml</groupId> <artifactId>mml-course-common</artifactId> </include> </includes></configuration> </plugin> </plugins>

重點關(guān)注兩處,layout 和 includes 。

layout 是為了 springboot jar簡化后能夠加載第三方j(luò)ar包目錄,如果沒加入這句話,在待會兒啟動時,會報錯。

includes 是指包含哪些項目的jar包,因為我項目結(jié)構(gòu)的問題,我必須將 service 、pojo、common這三個項目打包進(jìn)去。假如你的項目中沒有自己項目依賴可以寫成如下格式,表示不包含任何jar包。

<includes> <include> <groupId>nothing</groupId> <artifactId>nothing</artifactId> </include></includes>

修改完pom.xml后,執(zhí)行 mvn clean package 命令打包出來的springboot項目jar包大小會從100M縮小到100K,此時的jar包并不能直接運(yùn)行,因為沒有這些第三方依賴。

上傳至服務(wù)器,速度會快很多,原來的jar包運(yùn)行命令是

nohub java ?jar mml-course.jar > ./logs/course.out 2>&1 &

nohub 表示后臺執(zhí)行這個jar。

現(xiàn)在需要改成如下格式

nohub java ?Dloader.path=/path/lib ?jar mml-course.jar > ./logs/course.out 2>&1 &

加入了 ?Dloader.path=/path/lib , /path/lib 根據(jù)實際的第三方j(luò)ar所在目錄,當(dāng)然也可以加載多個地址,用,分隔就好了。一定要在pom中加入<layout>ZIP</layout>,否則這步無法加載第三方j(luò)ar目錄,導(dǎo)致報錯。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Spring
相關(guān)文章:
主站蜘蛛池模板: 国产成人精品免费视频大全麻豆 | 尤物视频在线观看网址 | 国内真实实拍伦视频在线观看 | 久久久男女野外野战 | 亚洲免费网站 | 色婷婷综合欧美成人 | 毛片黄片免费看 | 欧美日韩一区二区三区四区 | 狼色视频在线观看 | 国产精品免费看香蕉 | 欧美性综合 | 激情丁香网 | 欧美日韩视频在线观看高清免费网站 | 国产精品99久久免费观看 | 午夜男人女人爽爽爽视频 | 男女性高爱潮免费网站 | 黄色一级免费 | 国产96福利视频在线观看 | 亚洲1024| 国产精品一区欧美激情 | 香蕉视频在线网址 | 日韩一级片免费在线观看 | 美国一级毛片在线观看 | 欧美日韩国产另类一区二区三区 | 国产入口在线观看 | 伊人黄网| 黄色视片| 色婷婷久久免费网站 | 香蕉网站狼人久久五月亭亭 | 国产在线视频色综合 | 成人禁在线观看 | 中文字幕一区在线播放 | 在线亚洲欧美日韩 | 国产剧情一区二区 | 日韩欧美91 | 97国内免费久久久久久久久久 | 另类二区三四 | 亚洲精品福利 | 婷婷久| 日韩国产精品99久久久久久 | 精彩视频一区二区 |