springboot項(xiàng)目中引入本地依賴jar包并打包到lib文件夾中
前言:
工作中,碰到過(guò)springboot框架構(gòu)建的java web項(xiàng)目,需要集成第三方推送功能,于是使用到了小米推送服務(wù),下載了相關(guān)jar包。項(xiàng)目中引入本地jar,問題不大,編寫完代碼后,通過(guò)測(cè)試類測(cè)試,也沒問題。然后就準(zhǔn)備打包部署到開發(fā)服上。由于項(xiàng)目是通過(guò)tomcat部署的,所以打包方式是打成war包。打包后上傳到開發(fā)服,啟動(dòng)成功后去測(cè)試編寫的推送接口,發(fā)現(xiàn)失敗了。
通過(guò)分析發(fā)現(xiàn),打包后的war中存放項(xiàng)目依賴jar的lib目錄中并沒有本地引入的推送相關(guān)的jar包。折騰了半個(gè)小時(shí),才解決了問題。解決后才發(fā)現(xiàn),其實(shí)是對(duì)maven這塊的基礎(chǔ)知識(shí)有點(diǎn)遺忘了。這里總結(jié)下springboot項(xiàng)目引入本地jar包,如何通過(guò)maven打包將jar打進(jìn)lib文件夾中:
1.首先在resources目錄下創(chuàng)建一個(gè)lib文件夾,將需要的jar包放入lib文件夾中
2.在pom.xml文件中,添加依賴坐標(biāo)。
注意:這里由于導(dǎo)入的本地jar,所以< dependency></ dependency>標(biāo)簽中需要添加
<dependency> ... <!-- 表示當(dāng)前jar是外部引入的,maven不會(huì)在repository查找它 --> <scope>system</scope> <!-- 指定引入的外部jar存放的路徑,一般將jar包放在項(xiàng)目的某個(gè)目錄下,通過(guò)相對(duì)路徑指定 --> <systemPath>...</systemPath> </dependency>
3.在pom的< build></ build>標(biāo)簽中還需進(jìn)行如下修改
<build> <finalName>xxxxxx</finalName> <plugins> <!--配置將第三方j(luò)ar打進(jìn)jar包中,跟<packaging>jar</packaging>配合,如果不寫,springboot默認(rèn)是打成jar包--> <!--<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <!-- 項(xiàng)目中單獨(dú)引入第三方j(luò)ar時(shí),includeSystemScope值要為true <includeSystemScope>true</includeSystemScope> </configuration> </plugin>--> <!-- 打war包 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>3.2.2</version> <configuration> <webResources> <!-- 配置將第三方j(luò)ar打進(jìn)war包中,跟<packaging>war</packaging>配合 --> <webResource> <directory>${pom.basedir}/src/main/resources/lib/</directory> <targetPath>WEB-INF/lib/</targetPath> <includes> <include>**/*.jar</include> </includes> </webResource> </webResources> </configuration> </plugin> </plugins> </build>
根據(jù)項(xiàng)目需要,打成jar包部署或war包部署,需要引入不同的插件,添加不同的配置。如果需要打成war包,不要忘了在pom.xml文件中添加< packaging >war</ packaging>配置。
4.打包部署后測(cè)試驗(yàn)證
可以通過(guò)調(diào)用相關(guān)接口測(cè)試,也可直接觀察部署包中l(wèi)ib文件夾中是否存在引入的本地jar來(lái)判定
到此這篇關(guān)于springboot項(xiàng)目中引入本地依賴jar包,如何打包到lib文件夾中的文章就介紹到這了,更多相關(guān)springboot引入本地依賴jar包內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java在web頁(yè)面上的編碼解碼處理及中文URL亂碼解決
這篇文章主要介紹了Java在web頁(yè)面上的編碼解碼處理及中文URL亂碼解決,文中所介紹的兩種使用過(guò)濾器解決中文鏈接亂碼的方法非常有效,需要的朋友可以參考下2016-02-02Spring Boot超詳細(xì)分析啟動(dòng)流程
SpringBoot是Spring開源組織下的子項(xiàng)目,是Spring組件一站式解決方案,主要是簡(jiǎn)化了使用Spring的難度,簡(jiǎn)省了繁重的配置,提供了各種啟動(dòng)器,開發(fā)者能快速上手,這篇文章主要給大家介紹了關(guān)于Spring Boot啟動(dòng)流程知識(shí)點(diǎn)的相關(guān)資料,需要的朋友可以參考下2022-07-07SpringBoot整合canal實(shí)現(xiàn)數(shù)據(jù)同步的示例代碼
本文主要介紹了SpringBoot整合canal實(shí)現(xiàn)數(shù)據(jù)同步,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03必須掌握的十個(gè)Lambda表達(dá)式簡(jiǎn)化代碼提高生產(chǎn)力
這篇文章主要為大家介紹了必須掌握的十個(gè)Lambda表達(dá)式來(lái)簡(jiǎn)化代碼提高生產(chǎn)力,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04