java工程mvn引用jar_maven 項目加載本地JAR

將jar安裝到本地的maven倉庫

1.首先確定本地有maven環境。

e0cba48abab1976b6810591e43c3e46b.png

2.安裝本地jar

模板:

mvn install:install-file -Dfile= -DgroupId= -DartifactId= -Dversion= -Dpackaging=示例:

mvn install:install-file -Dfile=F:\jave-ffmpegjave-1.0.2.jar -DgroupId=ffmpegjave -DartifactId=java-ffmpegjave -Dversion=1.0.2 -Dpackaging=jar

: 要安裝的JAR的本地路徑

:要安裝的JAR的Group Id

: 要安裝的JAR的 Artificial Id

: JAR 版本

: 打包類型,例如JAR

注意:最好在pom.xml文件所在的目錄運行上述命令,個人經驗不在根目錄運行有時會安裝不成功

65ec69e141aaf55311545294a08e5561.png

如圖出現SUCCESS就表示安裝成功。

3.引用jar

找到安裝的pom,打開復制引用

如:

ffmpegjave

java-ffmpegjave

1.0.2

這種方法弊端較大,程序的可維護性以及移植性較低。例如當你改變本地Maven倉庫時需要重新安裝。如果引用此JAR的項目是多人協調工作的項目,則每個人都要將其安裝在自己的本地倉庫。

解決辦法

可以將此JAR文件放在工程的根目錄下,讓其隨著項目走,然后在pom.xml文件中使用maven-install-plugin在Maven初始化階段完成安裝。

如圖

fa058844456ef3b75043b24da5dde6aa.png

4.0.0

com.watch.parent

children-watch-parent

0.0.1-SNAPSHOT

com.watch.commons

children-watch-commons

0.0.1-SNAPSHOT

children-watch-commons

http://maven.apache.org

ffmpegjave

java-ffmpegjave

1.0.2

org.apache.maven.plugins

maven-install-plugin

2.5

initialize

install-file

ffmpegjave

java-ffmpegjave

1.0.2

jar

${basedir}/lib/java-ffmpegjave-1.0.2.jar

org.eclipse.m2e

lifecycle-mapping

1.0.0

org.codehaus.mojo

aspectj-maven-plugin

[1.0,)

test-compile

compile

org.apache.maven.plugins

maven-install-plugin

[2.5,)

install-file

false

SpringBoot的配置

org.springframework.boot

spring-boot-maven-plugin

initialize

install-file

ffmpegjave

java-ffmpegjave

1.0.2

jar

${basedir}/lib/java-ffmpegjave-1.0.2.jar

${basedir}表示pom.xml文件所在的目錄

然后打包測試看是否能引用到。如圖

d309c2865c6df8bbbe579d4a1f23745d.png

4c7f844c385fdf081eaf679567cb5b24.png

68a7b9f277e5dc392d6159c9df5c506b.png

cb628d70256896e387e9abd103e56e2b.png

我這里是聚合工程,jar是在公共項目中引用的,我netty項目要用到只需要引用公共項目就可以了,jar也會一起引用過來的。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/453508.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/453508.shtml
英文地址,請注明出處:http://en.pswp.cn/news/453508.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

compress()方法

boolean compress(Bitmap.CompressFormat format, int quality, OutputStream stream) 把位圖的壓縮信息寫入到一個指定的輸出流中。如果返回true,可以通過傳遞一個相應的輸出流到BitmapFactory.decodeStream()來重構該位圖。注意:并非所有的格式都直接支…

token的三點注意項

token的安全是極度重要的 1:token的唯一性, 它代表著來自某應用系統用戶的一次成功登錄。我們可以利用java util包工具直接生成一個32位唯一字符串來實現。 String token UUID.randomUUID().toString(); 同時,我們定義一個javabean&#xff…

0.1 js復習

1.1 JavaScript的用途 JavaScript用來制作web頁面交互效果,提升用戶體驗。 能夠制作的頁面效果:輪播圖,無限瀑布流,tab切換,定位地圖,表單驗證等。 web前端三層來說: 結構層 HTML 從語義的角度&…

優秀的軟件企業為何倒下?

最近不到一個月,就看到兩家著名公司——SUN公司和Borland公司相繼被收購,引起IT界不小的震動,讓人感慨萬分。在此之前有北電(Nortel)、摩托羅拉的衰退,再往前有 美國數字設備公司Digital(Digita…

python 列表的推導器和內置函數

# 列表的推導式# li []# for i in range(1,11):# li.append(i)# print(li)## lis [i for i in range(1,11)] #列表的推導式# print(lis)#[變量(加工后的變量) for 變量 i in 可迭代的數據類型】 列表的推導式# li2 []# for i in ran…

Android service 中的stub類

stub是為了方便client,service交互而生成出來的代碼。 AIDL(android 接口描述語言)是一個IDL語言,它可以生成一段代碼,可以使在一個android設備上運行的兩個進程使用內部通信進程進行交互。如果你需要在一個進程中(例如:在一個Activity中)訪…

kafka exporter v0.3.0 發布: Prometheus官方推薦,歡迎試用

2019獨角獸企業重金招聘Python工程師標準>>> 時隔1個半月,kakfa exporter v0.3.0于今日正式發布,歡迎大家試用。 項目地址 Github: https://github.com/danielqsj/kafka_exporter Docker Hub: https://hub.docker.com/r/danielqsj/kafka-expo…

java手動切換成獨立顯卡_JAVA設計模式之調停者模式

在閻宏博士的《JAVA與模式》一書中開頭是這樣描述調停者(Mediator)模式的:調停者模式是對象的行為模式。調停者模式包裝了一系列對象相互作用的方式,使得這些對象不必相互明顯引用。從而使它們可以較松散地耦合。當這些對象中的某些對象之間的相互作用發…

2018.2.8 php實現qq登陸接口

PHP實現QQ登錄的原理和實現過程 2018-02-08 學習與分享 PHP自學中心 第三方登錄,就是使用大家比較熟悉的比如QQ、微信、微博等第三方軟件登錄自己的網站,這可以免去注冊賬號、快速留住用戶的目的,免去了相對復雜的注冊流程。下邊就給大家講一…

關于積累的一點看法

這是vip那邊發表的一篇帖子,今天整理,發現可能有一點代表性,就再發在這里,供各位同學參考。 壇子里有人討論小公司要不要積累框架的問題,有感而發,寫了點自己的看法,一家之言,歡迎拍…

去除vue項目中的#及其ie9兼容性

一、如何去除vue項目中訪問地址的# vue2中在路由配置中添加mode(vue-cli創建的項目在src/router/index.js) 1 export default new Router({2 mode: history,3 routes: [4 {5 path: /,6 name: menu,7 component: menu,8 …

sendBroadcast與sendStickyBroadcast的區別

前提條件:此處我主要討論兩種廣播在代碼中動態注冊時的一些細節問題。 正常情況下,廣播通常都是執行一次注冊代碼,就會觸發各接收器接收一次,無論是在onCreate里注冊還是onResume里注冊:若在onCreate里注冊&#xff0…

java 線程池 初始大小_為什么tomcat的默認線程池大小如此之大? - java

我注意到默認的tomcat 7線程池大小似乎是200。但是普通的CPU似乎有16個內核。因此只能并行執行16個線程為什么tomcat使用那么多線程。參考方案多年以來,許多單核計算機問世,并且能夠以“偽并行”模式運行功能,也就是說,您可能有16…

Hadoop2.6.0完全分布式安裝

1、修改主機名稱 對master/slave1/slave2同時配置為Master/Slave1/Slave2 masterMaster:~$ sudo gedit /etc/hostname 上述3個虛機結點均需要進行以上步驟 2、填寫主機IP 對master/slave1/slave2同時配置 masterMaster:~$ sudo gedit /etc/hosts 192.168.48.128 master192.168.…

DEX加密效果分析

dex加密目的:保護安卓應用的Java源代碼,避免被惡意分析,技術被竊取準備工具:1、apktool :反編譯apk,提取smali代碼2、dex2jar :將dex轉化為jar文件3、jd-gui :查看jar文件&#xff0…

一些比特率值

比特率 比特率是指將數字聲音由模擬格式轉化成數字格式的采樣率,采樣率越高,還原后的音質就越好。 比特率值與現實音頻對照: 16KBPS電話音質 24KBPS增加電話音質、短波廣播、長波廣播、歐洲制式中波廣播40KBPS美國制式中波廣播56KBPS話…

java asynccontext,超時后的JavaEE 6 AsyncContext行為

What is the exact behavior of AsyncContext after it times out? Does it still run and does it return response using getResponse()?解決方案Java Servlet 3.0 Maintenance Release on page 34 reads:A call to this method - ServletRequest.startAsync(ServletReques…

BZOJ1857:[SCOI2010]傳送帶——題解

http://www.lydsy.com/JudgeOnline/problem.php?id1857 Description 在一個2維平面上有兩條傳送帶,每一條傳送帶可以看成是一條線段。兩條傳送帶分別為線段AB和線段CD。lxhgww在AB上的移動速度為P,在CD上的移動速度為Q,在平面上的移動速度R。…

mnt/sdcard和storage/sdcard的區別

/mnt 目錄,熟悉linux的人都清楚,linux默認掛載外部設備都會掛到這個目錄下面去,如將sd卡掛載上去后,會生成一個/mnt/sdcard 目錄。 storage/sdcard 目錄,這是一個軟鏈接(相當于windows的文件夾的快捷方式&a…

kd樹的原理

kd樹就是一種對k維空間中的實例點進行存儲以便對其進行快速檢索的樹形數據結構,可以運用在k近鄰法中,實現快速k近鄰搜索。構造kd樹相當于不斷地用垂直于坐標軸的超平面將k維空間切分。 ?? 假設數據集\(T\)的大小是\(m*n\),即\(T{x_1,x_2,...x_m}\),其中…