maven项目引入三方jar包
Maven項目引入三方jar包
前提:
在項目開發過程中,難免會用到第三方jar的時候,比如:sdk、或者特定的jar包(不在maven倉庫中),這種情況下,我們怎么在項目中直接使用,并且使用maven打包時也將三方包放進最后生成的文件中呢?
在多次資料查詢、實驗的過程中終于找到了一種方式,如有需要,可參考以下步驟:
舉例:
? 外部引入commons-io-2.8.0.jar(不使用maven倉庫下載)
一、項目中引入使用
1、項目路徑下創建lib目錄
2、copy commons-io-2.8.0.jar至lib目錄下,如下圖所示:
3、pom.xml文件中本地引入三方jar(commons-io-2.8.0.jar),如所示:
<dependency>//這三個值可自定義,如不重復,建議和使用原名稱<groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.8.0</version>//必有,且值必須為:system<scope>system</scope>//jar包所在位置,${pom.basedir}表示當前項目路徑(必須使用pom,后面打包會用到),后面是三方jar包所在路徑<systemPath>${pom.basedir}/lib/commons-io-2.8.0.jar</systemPath></dependency>4、在項目中使用commons-io相關工具類,例如:FileUtils的readFileToString方法,讀取文件內容:
@GetMapping("/getIndexControllerCode")public String getIndexControllerCode() throws IOException {ClassPathResource resource = new ClassPathResource("application.yaml");File file = resource.getFile();String applicationStr = FileUtils.readFileToString(file, StandardCharsets.UTF_8);return applicationStr;}使用測試通過。
二、maven打包將三方Jar一同放進最后的項目Jar文件中
1、確認以上pom.xml中引入的三方jar本地路徑取得項目路徑必須為:pom.basedir,如果是${project.basedir}打包可能會失敗
2、在pom.xml的build標簽中添加如下:
<resources><resource><directory>lib</directory><targetPath>BOOT-INF/lib</targetPath></resource><resource><directory>src/main/resources</directory><targetPath>BOOT-INF/classes</targetPath></resource></resources>3、正常使用maven打包
4、查看打包的項目jar文件中是否有三方jar
? 查看jar中,BOOT-INF下,lib中是否有commons-io-2.8.0.jar
OT-INF下,lib中是否有commons-io-2.8.0.jar
[外鏈圖片轉存中…(img-i0b79Os3-1642737275464)]
打包測試通過
總結
以上是生活随笔為你收集整理的maven项目引入三方jar包的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 谷歌为世界造AI,世界却用AI做AV
- 下一篇: 企业申请外观专利的优势