maven打包本地jar到項(xiàng)目中的方法實(shí)現(xiàn)
在maven項(xiàng)目中,我們的項(xiàng)目依賴一般取自local的repository或者遠(yuǎn)程的repository,比如下面這個配置:
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.3.0</version>
</dependency>一般而言,maven會先去本地的repository尋找,如果找不到,就會依據(jù)<repository>的定義,去遠(yuǎn)程的repository去找依賴。
不過有時候,我們依賴的jar并不在任何repository中,可能就是從第三方下載的1個sdk,怎么辦?

比如上面拼多多的sdk并沒有提供maven依賴坐標(biāo),而是直接提供了1個下載地址。
maven有辦法處理這種情況,它支持systemscope的定義方式,可以加載本地任意路徑下的jar包。
1.直接將sdk下載到本地,在maven項(xiàng)目的根目錄中新建1個lib文件夾。將下載的sdk拷貝到lib文件夾里。

2.修改pom文件,添加如下依賴

<dependency>
<groupId>pdd</groupId>
<artifactId>pop-sdk</artifactId>
<type>jar</type>
<version>1.15</version>
<scope>system</scope>
<systemPath>${pom.basedir}/lib/pop-sdk.jar</systemPath>
</dependency>其中g(shù)roupId和artifactId都可以自定義,systemPath配置的是我們maven項(xiàng)目的根目錄下lib文件夾中的jar。
3.如果發(fā)現(xiàn)有些配置文件沒有拷貝到打的jar中,可以修改pom文件,添加如下依賴。
<resources>
<resource>
<directory>${project.basedir}/lib</directory>
<targetPath>/BOOT-INF/lib/</targetPath>
<includes>
<include>**/*.jar</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<targetPath>/BOOT-INF/classes</targetPath>
<includes>
<include>**/**</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<filtering>false</filtering>
</resource>
</resources>這一步并不是必要的,我添加了下面的配置是因?yàn)榇虬院骯pollo配置文件app.properties沒拷貝到項(xiàng)目中導(dǎo)致拉取配置失敗,項(xiàng)目沒有啟動起來。
到此這篇關(guān)于maven打包本地jar到項(xiàng)目中的方法實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)maven打包本地jar 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 避免多個jar通過maven打包導(dǎo)致同名配置文件覆蓋沖突問題
- maven打包所有依賴對外提供sdk.jar
- Maven打包所有依賴到一個可執(zhí)行jar中遇到的問題
- maven工程打包引入本地jar包的實(shí)現(xiàn)
- IDEA在SpringBoot項(xiàng)目使用Maven打包后jar包太小問題及解決
- idea本地jar使用maven打包本地依賴實(shí)現(xiàn)自動編譯到項(xiàng)目里的操作
- maven打包加入本地jar包的實(shí)現(xiàn)
- maven多模塊項(xiàng)目單獨(dú)打包指定模塊jar包方式
- Maven項(xiàng)目打包為jar的四種方式
相關(guān)文章
spring boot項(xiàng)目使用@JsonFormat失效問題的解決
這篇文章主要介紹了spring boot項(xiàng)目使用@JsonFormat失效問題的解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-11-11
執(zhí)行java請求時導(dǎo)致在腳本執(zhí)行結(jié)束時JVM無法退出
這篇文章主要介紹了執(zhí)行java請求,導(dǎo)致在腳本執(zhí)行結(jié)束時JVM無法退出問題,本文通過原因分析給出解決方案,需要的朋友可以參考下2020-02-02
java隨機(jī)抽取指定范圍不重復(fù)的數(shù)字
這篇文章主要介紹了java隨機(jī)抽取指定范圍不重復(fù)的數(shù)字的相關(guān)資料,需要的朋友可以參考下2016-06-06
springMVC+velocity實(shí)現(xiàn)仿Datatables局部刷新分頁方法
下面小編就為大家分享一篇springMVC+velocity實(shí)現(xiàn)仿Datatables局部刷新分頁方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-02-02
JDK21與IDE集成之以IntelliJ?IDEA為例講解
們在使用IDEA開發(fā)Java應(yīng)用時,一般第一步就是需要配置好我們的jdk環(huán)境,這篇文章主要介紹了JDK21與IDE集成之以IntelliJ?IDEA為例講解的相關(guān)資料,文中將步驟介紹的非常詳細(xì),需要的朋友可以參考下2025-12-12
SpringBoot整合MyBatis Plus實(shí)現(xiàn)基本CRUD與高級功能
Spring Boot是一款用于快速構(gòu)建Spring應(yīng)用程序的框架,而MyBatis Plus是MyBatis的增強(qiáng)工具,本文將詳細(xì)介紹如何在Spring Boot項(xiàng)目中整合MyBatis Plus,并展示其基本CRUD功能以及高級功能的實(shí)現(xiàn)方式,需要的朋友可以參考下2024-02-02
圖解Java中插入排序算法的原理與實(shí)現(xiàn)
插入排序的算法描述是一種簡單直觀的排序算法。它的工作原理是通過構(gòu)建有序序列,對于未排序數(shù)據(jù),在已排序序列中從后向前掃描,找到相應(yīng)位置并插入。本文將通過圖片詳解插入排序的原理及實(shí)現(xiàn),需要的可以參考一下2022-08-08

