Maven使用pom.xml引入自定義jar包方式
Maven使用pom.xml引入自定義jar包
這里我以這個(gè)jar包為例,aliyun-java-sdk-core-3.2.3.jar ,這是我在做手機(jī)短信服務(wù)用到的jar包
①進(jìn)入C盤下的maven倉(cāng)庫(kù)C:\Users\用戶\.m2\repository
創(chuàng)建一個(gè)文件夾aliyun-java-sdk-core,進(jìn)入,再創(chuàng)建一個(gè)相同名字的文件夾
②進(jìn)入,創(chuàng)建一個(gè)名字為3.2.3(jar包版本號(hào))的文件夾
③在目錄下將自定義的jar包c(diǎn)opy過(guò)來(lái),新建一個(gè)同名的.pom文件
在.pom中這樣寫
<project> <modelVersion>1.0.0</modelVersion> <groupId>aliyun-java-sdk-core</groupId> <artifactId>aliyun-java-sdk-core</artifactId> <version>3.2.3</version> </project>
④最后在項(xiàng)目的pom.xml中這樣引入jar包就OK了
<!-- 阿里短信服務(wù)jar/ --> <dependency> <groupId>aliyun-java-sdk-core</groupId> <artifactId>aliyun-java-sdk-core</artifactId> <version>3.2.3</version> </dependency>
maven打jar包 本地包pom引入的2種方式
項(xiàng)目中有些jar包是第三方的,maven官方倉(cāng)庫(kù)沒(méi)有,
需要使用mvn install命令打包到本地,然后將其寫入到pom.xml的依賴中,
maven倉(cāng)庫(kù)有的jar包則從maven官網(wǎng)找到對(duì)應(yīng)版本的depdency寫入pom文件里面,這樣maven打包就可以包含第三方j(luò)ar包了,否則maven只會(huì)打包pom文件里面的,不會(huì)包括第三方j(luò)ar包,程序運(yùn)行將報(bào)錯(cuò)。
這里推薦2種打包第三方j(luò)ar包的方式:
第一種
打包第三方j(luò)ar包到本地倉(cāng)庫(kù),然后在pom.xml中引入
例如:將alipay-sdk-abc.jar 打包到本地倉(cāng)庫(kù)
- mvn命令:
mvn install:install-file -Dfile=?第三方j(luò)ar路徑 -DgroupId=包名 -DartifactId=jar名 -Dversion=版本 -Dpackaging=類型
- 案例:
mvn install:install-file -Dfile=?G:\thirdpartyjar\alipay-sdk-abc.jar -DgroupId=com.thirdparty -DartifactId=alipay-sdk-abc -Dversion=3.1.0.8 -Dpackaging=jar
- pom.xml配置:
<dependency> <groupId>com.thirdparty</groupId> <artifactId>alipay-sdk-abc</artifactId> <version>3.1.0.8</version> </dependency>
第二種
通過(guò)在pom.xml中指定第三方j(luò)ar包路徑來(lái)引入依賴
比如第三方j(luò)ar包在lib文件夾下,對(duì)pom.xml的配置如下:
標(biāo)簽里面引入第三方j(luò)ar包的依賴
- pom.basedir指的是pom文件所在的目錄,
- systemPath指的是第三方j(luò)ar包所在路徑。
如:
<dependency> <groupId>com.abc</groupId> <artifactId>cryptokit</artifactId> <version>1.0</version> <scope>system</scope> <systemPath>${pom.basedir}/lib/cryptokit-1.0.jar</systemPath> </dependency>
${pom.basedir} 對(duì)應(yīng)的是當(dāng)前項(xiàng)目的目錄所在
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
詳解Spring?@Lazy注解為什么能破解死循環(huán)
這篇文章主要來(lái)和大家探討一下Spring中的@Lazy注解為什么能破解死循環(huán),文中的示例代碼講解詳細(xì),具有一定的參考價(jià)值,需要的可以了解一下2023-07-07Spring通過(guò)配置文件管理Bean對(duì)象的方法
這篇文章主要介紹了Spring通過(guò)配置文件管理Bean對(duì)象的相關(guān)知識(shí),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07Java中BigDecimal,DateFormatter?和迭代器的"陷阱"
這篇文章主要介紹了Java中BigDecimal,DateFormatter?和迭代器的"陷阱",文章圍繞主題展開詳細(xì)的內(nèi)容介紹,感興趣的小伙伴可以參考一下2022-06-06Spring Boot和Vue跨域請(qǐng)求問(wèn)題原理解析
這篇文章主要介紹了Spring Boot和Vue跨域請(qǐng)求問(wèn)題原理解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12淺談Java中浮點(diǎn)型數(shù)據(jù)保留兩位小數(shù)的四種方法
今天在進(jìn)行開發(fā)的過(guò)程中遇到了一個(gè)小問(wèn)題,是關(guān)于如何將double類型的數(shù)據(jù)保留兩位小數(shù)。具有一定的參考價(jià)值,本文就詳細(xì)的介紹一下2021-09-09SpringCloud讓微服務(wù)實(shí)現(xiàn)指定程序調(diào)用
這篇文章主要介紹了SpringCloud讓微服務(wù)實(shí)現(xiàn)指定程序調(diào)用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06Java的增強(qiáng)for循環(huán)修改數(shù)組元素的問(wèn)題小結(jié)
增強(qiáng)for循環(huán)的元素變量x,就是一個(gè)局部變量,它是引用數(shù)組當(dāng)前元素引用的副本(就相當(dāng)于上文所說(shuō)的你復(fù)刻朋友的鑰匙),或者是基本數(shù)據(jù)類型的值的副本,這篇文章主要介紹了Java的增強(qiáng)for循環(huán)修改數(shù)組元素的問(wèn)題小結(jié),需要的朋友可以參考下2024-02-02