您好,登錄后才能下訂單哦!
這篇文章主要介紹“FastDFS報錯No beans of 'FastDFS Client' type found的解決方法”,在日常操作中,相信很多人在FastDFS報錯No beans of 'FastDFS Client' type found的解決方法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”FastDFS報錯No beans of 'FastDFS Client' type found的解決方法”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
前言:
今天接手了同事之前做的一個小項目,里面涉及到了 FastDFS 的使用。但是當我在本地運行項目的時候,卻報了 Could not autowire No beans of 'FastDFS Client' type found 相關的錯誤。
接下來就詳細描述一下 FastDFS 報錯的解決方法。
啟動 Application 類報錯:
required a bean of type 'org.springframework.fasfdfs.server.FastDFSClient' that could not be found.
如下圖所示:根據(jù)報錯信息發(fā)現(xiàn),并不缺少 jar 包,報錯提示里所需要的類也有,不知道為什么會報錯。
綜上所述,再結合同事可以通過 idea 來正常運行,所以懷疑是 FastDFS 相關 jar 包可能存在依賴沖突。
1、首先將 Maven 倉庫中 FastDFS 相關 jar 包刪除,共兩個,分別是:fastdfs-client-java-1.27-SNAPSHOT.jar 和 spring-boot-starter-fastdfs-1.0-SNAPSHOT.jar ,其中后者依賴前者。
2、由于無法從中央倉庫中下載 FastDFS 的上述 jar 包,所以需要手動構建源碼生成 jar 文件。下載 fastdfs-client-java 和 spring-boot-starter-fastdfs 源碼到本地,配置好源碼項目的 Maven 地址后,執(zhí)行 mvn clean install 。執(zhí)行成功后,對應的 Maven 倉庫中就自動有了上述兩個 jar 包。需要特別說明的是:需要先打 fastdfs-client-java 的 jar 包,因為 spring-boot-starter-fastdfs 項目打包依賴 fastdfs-client-java-1.27-SNAPSHOT.jar 。
3、采用 Invalidate and Restart 的方式來重啟 idea ,這樣可以讓 idea 重新加載項目。
4、再重新運行 FastDFS 項目,啟動成功!
關于這個問題我進行了反復測試,假如自己有 fastdfs-client-java-1.27-SNAPSHOT.jar 和 spring-boot-starter-fastdfs-1.0-SNAPSHOT.jar 包,采用
mvn install:install-file -Dfile="xxx.jar" -DgroupId=xxx -DartifactId=xxx -Dversion=xxx -Dpackaging=jar
的形式將本地 jar 包導入到 Maven 倉庫中。雖然可以成功導入,但啟動項目依舊會報上述錯誤,所以最穩(wěn)妥的方式還是下載源碼并打包,通過這樣的方式將需要的 jar 包導入到 Maven 倉庫中。
mvn clean : 清空編譯文件。
mvn test : 運行測試用例。
mvn compile : 編譯項目。
mvn package : 打包項目。
mvn install : 安裝 jar 包到 Maven 的本地倉庫中。
注意點:執(zhí)行 mvn test ,會先執(zhí)行 mvn compile ;執(zhí)行 mvn package ,會先執(zhí)行 mvn compile 和 mvn test ;執(zhí)行 mvn install ,會先執(zhí)行 mvn package 。
到此,關于“FastDFS報錯No beans of 'FastDFS Client' type found的解決方法”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。