Minio與SpringBoot關於okhttp3的坑
highlight: github theme: cyanosis font: gary
拋磚
今天使用monio做S3儲存時,新增雲伺服器初始化時一直在構建客戶端丟擲異常。
java
MinioClient.builder() //NoClassDefFoundError: Could not initialize class MinioAsyncClient
嗯?為什麼會是 NoClassDefFoundError
\
再次確認依賴,沒問題,monio版本也是最新的,況且我也不是用的MinioAsyncClient
\
好吧,咱來看看原始碼(不想看過程 可直接拉到最後完璧)
追影
\
哦,實際上還是構建的一個非同步客戶端, 那沒事了 \
那我直接用
MinioAsyncClient
來構建客戶端呢 \
好傢伙
再去看依賴庫看版本
\
緊跟著再去minio的依賴pom看看
\
這不麻了嗎?
這個
okhttp3
的3.14.9
版本從哪裡冒出來的 \
再來分析一下依賴關係
\
版本的確是被更改了,能更改當前專案的包版本那就只有父級的pom了,於是咱繼續追~ \
當我開啟父級的spring-boot-dependencies查詢時,果然
\
這不就離個大譜嗎?原來是領頭人的版本問題
完璧
終於找到罪魁禍首了,既然這個版本是spring-boot-dependencies
宣告的,那咱就直接覆蓋掉就好 \
直接在父級POM中的properties中再宣告一個與minio一樣的版本號即可
\
至此問題解決
「其他文章」