javacv-platform最小依賴處理

xiang_6119發表於2020-09-24

文章目錄


前言

前面講到由於引入了javacv-platform 這個依賴,導致最後專案打出來的jar包,比之前大了足足400M+, 今天我們來解決下這個問題。


 

一、出現原因?

原因:由於我們引入了 javacv-platform 這個依賴, 這個依賴沒有做到平臺相容,所以他會把所有平臺的依賴檔案一股腦全部引入專案, 就導致專案會平白無故多出了130多個jar檔案。

如圖:

二、解決方案

1.去其糟粕

具體實現:

刪除專案對 javacv-platform jar包的依賴

2.取其精華

OpenCV 強依賴javacv-1.4.3.jar、javacpp-1.4.3.jar,這兩個檔案, 所以我們將這兩個檔案從本地倉庫上傳到公司的私服,通過pom檔案單獨引用

<dependency>
    <groupId>org.bytedeco</groupId>
    <artifactId>javacv</artifactId>
    <version>1.4.3</version>
</dependency>

<dependency>
    <groupId>org.bytedeco</groupId>
    <artifactId>javacpp</artifactId>
    <version>1.4.3</version>
</dependency>

圖片模糊度檢查強依賴 open-cv-3.4.3-1.4.3.jar 這個檔案,由於我們的專案需要在本地和服務上執行,所以我們需要引入本地作業系統和遠端伺服器作業系統對應的支援, 即需要將 剛剛提及到的jar檔案和以下兩個jar檔案,單獨上傳到公司的私服上面, 通過pom檔案引進專案

 open-cv-3.4.3-1.4.3-windows-x86_64.jar、open-cv-3.4.3-1.4.3-windows-x86_64.jar 

<dependency>
    <groupId>org.bytedeco</groupId>
    <artifactId>open-cv</artifactId>
    <version>3.4.3-1.4.3</version>
</dependency>

<dependency>
    <groupId>org.bytedeco</groupId>
    <artifactId>open-cv</artifactId>
    <version>3.4.3-1.4.3</version>
    <classifier>linux-x86_64</classifier>
</dependency>

<dependency>
    <groupId>org.bytedeco</groupId>
    <artifactId>open-cv</artifactId>
    <version>3.4.3-1.4.3</version>
    <classifier>windows-x86_64</classifier>
</dependency>

注意剛剛說的三個檔案在上傳到私服的時候,路徑要一致, 並且要新增 classifier

如圖

最終專案打出來的jar包大小恢復如初。

相關文章