日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

maven 安装本地jar_使用Maven安装本地jar

發布時間:2023/12/3 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 maven 安装本地jar_使用Maven安装本地jar 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

maven 安裝本地jar

1.問題與選擇

Maven是一種非常通用的工具,其可用的公共存儲庫首屈一指。 但是,總會有一個不在任何地方托管的工件,或者托管該工件的存儲庫有依賴的風險,因為當您需要它時,它可能不會啟動。 發生這種情況時,有幾種選擇:

  • 硬著頭皮安裝完整的版本庫管理解決方案, 例如Nexus
  • 嘗試將工件上傳到更知名的公共存儲庫之一
  • 使用Maven插件在本地安裝工件

Nexus當然是更成熟的解決方案,但也更復雜 。 設置一個實例來運行Nexus,設置Nexus本身,配置和維護它對于使用單個jar這樣的簡單問題來說可能是過分的。 但是,如果這種情況(托管自定義工件)很常見,那么存儲庫管理器就很有意義。

將工件直接上載到公共存儲庫或直接在Maven Central中也是一種很好的解決方案,但是通常很長 。 另外,該庫可能根本沒有啟用Maven,這使得處理過程變得更加困難,因此,現在就不能使用工件就不是一個現實的解決方案。 剩下的第三個選擇是-在源代碼管理中添加工件并使用maven插件-在這種情況下, maven-install-plugin可以在構建過程需要它之前在本地安裝它 。 到目前為止,這是最簡單,最可靠的選項。

2.使用

讓我們從將工件安裝到本地存儲庫所需的完整配置開始:

<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-install-plugin</artifactId><version>2.4</version><configuration><groupId>org.somegroup</groupId><artifactId>someartifact</artifactId><version>1.0</version><packaging>jar</packaging><file>${basedir}/dependencies/someartifact-1.0.jar</file><generatePom>true</generatePom></configuration><executions><execution><id>install-jar-lib</id><goals><goal>install-file</goal></goals><phase>validate</phase></execution></executions> </plugin>

現在,讓我們分解并分析此配置的詳細信息。

2.1。 工件信息

工件信息定義為<configuration>元素的一部分。 實際語法與聲明依賴項非常相似– groupId , artifactId和version元素。 配置的下一部分需要定義工件的包裝 -指定為jar 。 接下來,我們需要使用Maven中提供屬性,提供要安裝的實際jar文件的位置 -這可以是絕對文件路徑,也可以是相對路徑。 在這種情況下, $ {basedir}屬性表示項目的根,即pom.xml文件所在的位置。 這意味著someartifact-1.0.jar文件需要放在根目錄下的/ dependencies /目錄中。 最后,還有一些其他可選詳細信息也可以配置。

2.2。 行刑

安裝文件目標的執行綁定到標準Maven 構建生命周期中的驗證階段 。 這樣一來,便可以在生命周期的最開始就安裝工件,然后在下一個編譯階段實際需要該工件。 一旦執行了編譯階段,就可以將我們的someartifact-1.0.jar正確地安裝在本地存儲庫中,就像從Maven Central本身中檢索到的任何其他工件一樣。

2.3。 生成pom與提供pom

是否需要為工件提供pom.xml文件的問題主要取決于工件本身的運行時依賴性 。 簡而言之,如果工件在其他jar上具有運行時相關性,則這些jar也將需要在運行時出現在類路徑上。 使用簡單的工件應該不會有問題,因為它在運行時可能沒有依賴關系(依賴關系圖中的葉子)。 安裝文件目標中的generatePom選項足以滿足以下這些工件:

<generatePom>true</generatePom>

但是,如果工件更加復雜并且確實具有非平凡的依賴關系 ,那么,如果這些依賴關系尚未存在于類路徑中,則必須添加它們。 一種方法是通過在項目的pom文件中手動定義這些新的依賴項。 更好的解決方案是提供一個自定義pom.xml文件以及已安裝的工件:

<generatePom>false</generatePom> <pomFile>${basedir}/dependencies/someartifact-1.0.pom</pomFile>

這將使Maven可以解析此自定義pom.xml中定義的工件的所有依賴關系,而不必在項目的主pom文件中手動定義它們。

3.結論

本文通過使用maven-install-plugin在本地安裝,介紹了如何使用不在Maven項目中任何地方托管的jar。

參考:在baeldung博客上,從我們的JCG合作伙伴 Eugen Paraschiv 使用Maven安裝本地jar 。

翻譯自: https://www.javacodegeeks.com/2013/04/install-local-jar-with-maven.html

maven 安裝本地jar

總結

以上是生活随笔為你收集整理的maven 安装本地jar_使用Maven安装本地jar的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。