服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - 解决springcloud中Feign导入依赖为unknow的情况

解决springcloud中Feign导入依赖为unknow的情况

2022-08-10 11:32job_wangwei Java教程

这篇文章主要介绍了解决springcloud中Feign导入依赖为unknow的情况,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

Feign导入依赖为unknow的情况

网上很多人在使用的feign时在pom.xml中的依赖为:

?
1
2
3
4
5
<!-- SpringCloud 整合 Feign -->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-feign</artifactId>
</dependency>

但是在我个人的使用过程中始终没能成功,Maven的DeDependencies一直显示为:

spring-cloud-starter-feign:unknow

经过自己翻阅官方文档中发现这一句:

To include Feign in your project use the starter with group org.springframework.cloud and artifact id spring-cloud-starter-openfeign. See the Spring Cloud Project page for details on setting up your build system with the current Spring Cloud Release Train.

?
1
2
3
4
5
<!-- SpringCloud 整合 Feign -->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>

Feign注解导入失败的处理

学习SpringCloud(Finchley.M8) Feign时,总是不能导入这两个注解@EnableFeignClients,@FeignClient ,事实上pom.xml已经导入了依赖spring-cloud-starter-openfeign,且SpringBoot的版本是2.0.0.RELEASE。

怀疑有部分依赖jar包下载不完整。由于不确定具体是哪几个或哪些jar包不完整,所以需要批量更新项目中所有失败的jar包。

打开命令行,运行如下命令,maven强制更新未完成的jar包

?
1
2
cd {project_home}
mvn clean install -U

果然看到异常输出

[ERROR] 读取{maven_home}\org\springframework\cloud\spring-cloud-openfeign-core\2.0.0.M1\spring-cloud-openfeign-core-2.0.0.M1.jar时出错; invalid LOC header (bad signature)

手动删除此文件spring-cloud-openfeign-core-2.0.0.M1.jar

重新执行上面的maven命令,以强制更新jar包,再次抛出异常:

  • HiController中引用的SchedualServiceHi,自动注入失败。
  • 为编译通过,先前已经把@FeignClient都注释了,当然不能自动注入了。

把Controller的相关代码也一并注释,第三次执行maven命令,强制更新jar包。成功。

用maven命令,更新成功jar包后,按Ctrl + Shif + O,就可以正常导入Feign的相关注解了。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/weixin_42740268/article/details/84822260

延伸 · 阅读

精彩推荐