这篇文章主要介绍“FastDFS报错No beans of 'FastDFS Client' type found的解决方法”,在日常操作中,相信很多人在FastDFS报错No beans of 'FastDFS Client' type found的解决方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”FastDFS报错No beans of 'FastDFS Client' type found的解决方法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
成都创新互联一直在为企业提供服务,多年的磨炼,使我们在创意设计,全网整合营销推广到技术研发拥有了开发经验。我们擅长倾听企业需求,挖掘用户对产品需求服务价值,为企业制作有用的创意设计体验。核心团队拥有超过10年以上行业经验,涵盖创意,策化,开发等专业领域,公司涉及领域有基础互联网服务大邑服务器托管、成都app软件开发、手机移动建站、网页设计、网络整合营销。
前言:
今天接手了同事之前做的一个小项目,里面涉及到了 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-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 仓库中。
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 。
到此,关于“FastDFS报错No beans of 'FastDFS Client' type found的解决方法”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!