实操:Could not autowire 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.

二、问题分析
如下图所示:根据报错信息发现,并不缺少 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 地址后,执行 mvn clean install ,执行成功后,对应的 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 和 spring-boot-starter-fastdfs 的源码程序我已经上传到了百度云,可私信本微信公众号【大数据实战演练】回复 190917 获取,或者自己在 github 等开源社区上找,都可以。
四、总结
1、问题小结
关于这个问题我进行了反复测试,假如自己有 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 仓库中。虽然可以成功导入,但启动项目依旧会报上述错误,所以最稳妥的方式还是下载源码并打包,通过这样的方式将需要的 jar 包导入到 Maven 仓库中。
2、maven 相关命令简介
- mvn clean : 清空编译文件
- mvn test : 运行测试用例
- mvn compile : 编译项目
- mvn package : 打包项目
- mvn install : 安装 jar 包到 Maven 的本地仓库中
注意点:执行 mvn test ,会先执行 mvn compile ;执行 mvn package ,会先执行 mvn compile 和 mvn test ;执行 mvn install ,会先执行 mvn package 。

实操:Could not autowire No beans of 'FastDFS Client' type found 的解决方法的更多相关文章
- 出现 org.springframework.beans.factory.BeanCreationException 异常的原因及解决方法
1 异常描述 在从 SVN 检出项目并配置完成后,启动 Tomcat 服务器,报出如下错误: 2 异常原因 通过观察上图中被标记出来的异常信息,咱们可以知道 org.springframework.b ...
- Python关于类的实操
实操一:总结 1.什么是绑定到对象的方法,如何定义,如何调用,给谁用?有什么特性? 2.什么是绑定到类的方法,如何定义,如何调用,给谁用?有什么特性? 3.什么是解除绑定的函数,如何定义,如何调用,给 ...
- 第十章 Fisco Bcos 权限控制下的数据上链实操演练
一.目的 前面已经完成fisco bcos 相关底层搭建.sdk使用.控制台.webase中间件平台等系列实战开发, 本次进行最后一个部分,体系化管理区块链底层,建立有序的底层控管制度,实现权限化管理 ...
- ABP入门系列(1)——学习Abp框架之实操演练
作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...
- 号外号外:9月13号《Speed-BI云平台案例实操--十分钟做报表》开讲了
引言:如何快速分析纷繁复杂的数据?如何快速做出老板满意的报表?如何快速将Speed-BI云平台运用到实际场景中? 本课程将通过各行各业案例背景,将Speed-BI云平台运用到实际场景中 ...
- IntelliJ Idea取消Could not autowire. No beans of 'xxxx' type found的错误提示
1.问题描述 在Idea的spring工程里,经常会遇到Could not autowire. No beans of 'xxxx' type found的错误提示.但程序的编译和运行都是没有问题的, ...
- Mysql MHA(GTID)配置(实操)
实现环境 centos6.7 MYSQL5.6.36 主:192.168.1.191 从1:192.168.1.145 从2:192.168.1.146 监测:放在从2上 192.168.1.146 ...
- Selenium之unittest测试框架详谈及实操
申明:本文是基于python3.x及selenium3.x. unittest,也可以称为PyUnit,可以用来创建全面的测试套件,可以用于单元自动化测试(模块).功能自动化测试(UI)等等. 官方文 ...
- unittest测试框架详谈及实操(二)
类级别的setUp()方法与tearDown()方法 在实操(一)的例子中,通过setUp()方法为每个测试方法都创建了一个Chrome实例,并且在每个测试方法执行结束后要关闭实例.是不是觉得有个多余 ...
随机推荐
- Zabbix-Web监控介绍篇
一.Web监控需求 监控一台Zabbix 3.0的WEB服务是否正常,包括登陆页,登陆后页面,退出页面 ps:zabbix的WEB监控可以实现登录后监控 二.监控环境介绍 监控服务器版本:zabbix ...
- 2018年蓝桥杯b组国赛真题
1.标题:换零钞x星球的钞票的面额只有:100元,5元,2元,1元,共4种.小明去x星旅游,他手里只有2张100元的x星币,太不方便,恰好路过x星银行就去换零钱.小明有点强迫症,他坚持要求200元换出 ...
- hmac模块和hashlib模块
hmac模块和hashlib模块 一.hash是什么 hash是一种算法(Python3.版本里使用hashlib模块代替了md5模块和sha模块,主要提供 SHA1.SHA224.SHA256. ...
- Docker学习总结(五)--迁移与备份
将容器保存为镜像 docker commit myNginx mynginx_i 镜像备份 docker save -o myNginx.tar myNginx_i 镜像恢复 docker load ...
- Gym - 101252H
题意略. 思路:二分.注意当利率高且m比较小的时候,每个月的偿还可能会大于本金,所以我们二分的右边界应该要设为2 * 本金. 详见代码: #include<bits/stdc++.h> # ...
- JavaScript 小游戏 贪吃蛇
贪吃蛇 代码: <!DOCTYPE html><html><head> <meta charset="UTF-8"> <met ...
- 《阿里巴巴Java开发手册1.4.0》阅读总结与心得(三)
(六)工程结构 (一)应用分层 1. [推荐]图中默认上层依赖于下层,箭头关系表示可直接依赖,如:开放接口层可以依赖于Web 层,也可以直接依赖于 Service 层,依此类推: 开放接口层: ...
- 如何替换ROS中默认的Planner
官方文档参阅:http://wiki.ros.org/pluginlib 有时候,可能会需要将替换ROS默认的planner替换成别的planner或我们自己的planner.这就涉及到了新plann ...
- NLP(十九) 双向LSTM情感分类模型
使用IMDB情绪数据来比较CNN和RNN两种方法,预处理与上节相同 from __future__ import print_function import numpy as np import pa ...
- .net中DES加密算法研究
/// <summary> /// DES加密算法 /// </summary> /// <param name="toEncrypt">要加密 ...