springboot項目中引入本地依賴jar包并打包到lib文件夾中
前言:
工作中,碰到過springboot框架構(gòu)建的java web項目,需要集成第三方推送功能,于是使用到了小米推送服務(wù),下載了相關(guān)jar包。項目中引入本地jar,問題不大,編寫完代碼后,通過測試類測試,也沒問題。然后就準(zhǔn)備打包部署到開發(fā)服上。由于項目是通過tomcat部署的,所以打包方式是打成war包。打包后上傳到開發(fā)服,啟動成功后去測試編寫的推送接口,發(fā)現(xiàn)失敗了。
通過分析發(fā)現(xiàn),打包后的war中存放項目依賴jar的lib目錄中并沒有本地引入的推送相關(guān)的jar包。折騰了半個小時,才解決了問題。解決后才發(fā)現(xiàn),其實是對maven這塊的基礎(chǔ)知識有點遺忘了。這里總結(jié)下springboot項目引入本地jar包,如何通過maven打包將jar打進(jìn)lib文件夾中:
1.首先在resources目錄下創(chuàng)建一個lib文件夾,將需要的jar包放入lib文件夾中

2.在pom.xml文件中,添加依賴坐標(biāo)。
注意:這里由于導(dǎo)入的本地jar,所以< dependency></ dependency>標(biāo)簽中需要添加
<dependency> ... <!-- 表示當(dāng)前jar是外部引入的,maven不會在repository查找它 --> <scope>system</scope> <!-- 指定引入的外部jar存放的路徑,一般將jar包放在項目的某個目錄下,通過相對路徑指定 --> <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>
<!-- 項目中單獨引入第三方j(luò)ar時,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ù)項目需要,打成jar包部署或war包部署,需要引入不同的插件,添加不同的配置。如果需要打成war包,不要忘了在pom.xml文件中添加< packaging >war</ packaging>配置。
4.打包部署后測試驗證
可以通過調(diào)用相關(guān)接口測試,也可直接觀察部署包中l(wèi)ib文件夾中是否存在引入的本地jar來判定

到此這篇關(guān)于springboot項目中引入本地依賴jar包,如何打包到lib文件夾中的文章就介紹到這了,更多相關(guān)springboot引入本地依賴jar包內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Spring Boot + Mybatis-Plus實現(xiàn)多數(shù)據(jù)源的方法
這篇文章主要介紹了Spring Boot + Mybatis-Plus實現(xiàn)多數(shù)據(jù)源的方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-11-11
Maven通過filtering標(biāo)簽讀取變量配置的三種方法
在日常開發(fā)中,我們大多都會有開發(fā)環(huán)境、測試環(huán)境、生產(chǎn)環(huán)境等,不同環(huán)境的參數(shù)肯定不一樣,本文主要介紹了Maven通過filtering標(biāo)簽讀取變量配置的三種方法,感興趣的可以了解一下2024-03-03
Java中switch-case結(jié)構(gòu)的使用方法舉例詳解
這篇文章主要介紹了Java中switch-case結(jié)構(gòu)使用的相關(guān)資料,switch-case結(jié)構(gòu)是Java中處理多個分支條件的一種有效方式,它根據(jù)一個表達(dá)式的值來執(zhí)行不同的代碼塊,需要的朋友可以參考下2025-01-01
javax.validation包里@NotNull等注解的使用方式
這篇文章主要介紹了javax.validation包里@NotNull等注解的使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01

