Maven配置項(xiàng)目依賴(lài)使用本地倉(cāng)庫(kù)的方法匯總(小結(jié))
Maven配置項(xiàng)目使用本地倉(cāng)庫(kù)有以下方式實(shí)現(xiàn):
1、類(lèi)似本地倉(cāng)庫(kù),但是屬于本地依賴(lài),比如某個(gè)JAR包是引用第三方的,直接放在了項(xiàng)目的lib文件夾,那么此時(shí)可以如下配置項(xiàng)目的POM:
<dependency> <groupId>ldapjdk</groupId> <artifactId>ldapjdk</artifactId> <scope>system</scope> <version>1.0</version> <systemPath>${basedir}\src\lib\ldapjdk.jar</systemPath> </dependency>
說(shuō)明:紅色部分為項(xiàng)目的JAR包所在位置。
!更好的方式是配置編譯參數(shù)<compilerArguments>,添加extdirs將jar包相對(duì)路徑添加到配置中,如下:
<build> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.6</source> <target>1.6</target> <encoding>UTF-8</encoding> <compilerArguments> <extdirs>src\main\webapp\WEB-INF\lib</extdirs> <extdirs>${basedir}/WebRoot/WEB-INF/lib</extdirs> </compilerArguments> </configuration> </plugin> </plugins> </build>
說(shuō)明:紅色部分為項(xiàng)目的JAR包所在位置。
2、配置Maven的setting.xml文件的本地倉(cāng)庫(kù)地址,但是這個(gè)方式的意思不是用在項(xiàng)目上的本地倉(cāng)庫(kù),而是比如遠(yuǎn)程倉(cāng)庫(kù)緩存的本地目錄;如果要實(shí)現(xiàn)項(xiàng)目上使用的本地倉(cāng)庫(kù),可以使用這個(gè)思路解決,比如先配置好本地倉(cāng)庫(kù)目錄,然后安裝需要的JAR包到本地倉(cāng)庫(kù),最后就是在項(xiàng)目上直接引用這個(gè)JAR包即可。
配置setttin.xml的本地倉(cāng)庫(kù)目錄方式如下:
<localRepository>C:/MyLocalRepository</localRepository>
安裝JAR包的思路參考:http://www.dbjr.com.cn/article/189209.htm
3、使用Maven的deploy(http://maven.apache.org/plugins/maven-deploy-plugin/)插件中的命令mvn deploy部署到本地文件夾,得到JAR包的相關(guān)文件,POM配置如下:
<distributionManagement> <repository> <id>oss</id> <url>http://127.0.0.1:8081/repository/maven-releases/</url> </repository> <snapshotRepository> <id>oss</id> <url>http://127.0.0.1:8081/repository/maven-snapshots/</url> </snapshotRepository> </distributionManagement>
注意:
?、偕厦娴呐渲檬沁h(yuǎn)程倉(cāng)庫(kù)的deploy,其中包括了兩個(gè)地址release和snapshot。
②配置deploy到本地倉(cāng)庫(kù)只需要配置<repository>節(jié)點(diǎn)即可,<snapshotRepository>節(jié)點(diǎn)去除。
③本地倉(cāng)庫(kù)的url參考:file:/user/jim/home/test/或者file:D:/test/
使用命令:mvn deploy
發(fā)布好之后整個(gè)文件夾test里面的內(nèi)容可以提交到一個(gè)遠(yuǎn)程目錄或者直接使用這個(gè)本地目錄,在POM項(xiàng)目上配置遠(yuǎn)程倉(cāng)庫(kù)的地址,不過(guò)這個(gè)url節(jié)點(diǎn)可以使用本地路徑,配置如下:
<repositories> <repository> <id>jsoftlocal-mvn-repo</id> <url>file:D:/test/</url> </repository> </repositories>
提示:這個(gè)url節(jié)點(diǎn)可以是遠(yuǎn)程地址,本地局域網(wǎng)地址,也可以是本地目錄地址。
配置好之后,直接在POM上配置自己發(fā)布的依賴(lài)即可。比如我發(fā)布測(cè)試的JAR包引入如下:
<dependency> <groupId>com.jsoft</groupId> <artifactId>testcommon</artifactId> <version>0.0.1-SNAPSHOT</version> </dependency>
Maven內(nèi)置變量說(shuō)明:
- ${basedir} 項(xiàng)目根目錄
- ${project.build.directory} 構(gòu)建目錄,缺省為target
- ${project.build.outputDirectory} 構(gòu)建過(guò)程輸出目錄,缺省為target/classes
- ${project.build.finalName} 產(chǎn)出物名稱(chēng),缺省為${project.artifactId}-${project.version}
- ${project.packaging} 打包類(lèi)型,缺省為jar
- ${project.xxx} 當(dāng)前pom文件的任意節(jié)點(diǎn)的內(nèi)容
到此這篇關(guān)于Maven配置項(xiàng)目依賴(lài)使用本地倉(cāng)庫(kù)的方法匯總(小結(jié))的文章就介紹到這了,更多相關(guān)Maven 依賴(lài)本地倉(cāng)庫(kù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot?+?Redis如何解決重復(fù)提交問(wèn)題(冪等)
在開(kāi)發(fā)中,一個(gè)對(duì)外暴露的接口可能會(huì)面臨瞬間的大量重復(fù)請(qǐng)求,本文就介紹了SpringBoot + Redis如何解決重復(fù)提交問(wèn)題,具有一定的參考價(jià)值,感興趣的可以了解一下2021-12-12Spring容器擴(kuò)展機(jī)制的實(shí)現(xiàn)原理
這篇文章主要介紹了Spring容器擴(kuò)展機(jī)制的實(shí)現(xiàn)原理,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-11-11Java OpenCV圖像處理之仿射變換,透視變換,旋轉(zhuǎn)詳解
這篇文章主要為大家詳細(xì)介紹了Java OpenCV圖像處理中仿射變換,透視變換,旋轉(zhuǎn)的實(shí)現(xiàn),文中的示例代碼講解詳細(xì),快跟隨小編一起學(xué)習(xí)一下2022-10-10MyBatis自定義映射resultMap的實(shí)現(xiàn)
本文主要介紹了MyBatis自定義映射resultMap的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03Java爬蟲(chóng)實(shí)現(xiàn)爬取京東上的手機(jī)搜索頁(yè)面 HttpCliient+Jsoup
下面小編就為大家分享一篇Java爬蟲(chóng)實(shí)現(xiàn)爬取京東上的手機(jī)搜索頁(yè)面 HttpCliient+Jsoup,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2017-11-11Java二叉搜索樹(shù)遍歷操作詳解【前序、中序、后序、層次、廣度優(yōu)先遍歷】
這篇文章主要介紹了Java二叉搜索樹(shù)遍歷操作,結(jié)合實(shí)例形式詳細(xì)分析了Java二叉搜索樹(shù)前序、中序、后序、層次、廣度優(yōu)先遍歷等相關(guān)原理與操作技巧,需要的朋友可以參考下2020-03-03SpringBoot實(shí)現(xiàn)日志鏈路追蹤的項(xiàng)目實(shí)踐
在分布式系統(tǒng)中,由于請(qǐng)求的處理過(guò)程可能會(huì)跨越多個(gè)服務(wù),因此,對(duì)請(qǐng)求的追蹤變得尤為重要,本文主要介紹了SpringBoot實(shí)現(xiàn)日志鏈路追蹤的項(xiàng)目實(shí)踐,感興趣的可以了解一下2024-03-03手把手教你寫(xiě)一個(gè)spring IOC容器的方法
這篇文章主要介紹了手把手教你寫(xiě)一個(gè)spring IOC容器的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04