SpringCloud 使用 Feign各 种报错

由于只想在SpringBoot中使用一下Feign客户端,来访问第三方请求,但因为各种版本问题,一直报各种乱七八糟的错

pom文件

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.1.12.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>
 
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.16.20</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-openfeign</artifactId>
        <version>2.0.2.RELEASE</version>
    </dependency>
</dependencies>

注意这里的springboot的版本号和openfeign的版本号非常重要,不要盲目使用最新版本

然后是常规操作

在项目启动类上添加@EnableFeignClients注解

//from fhadmin.cn
@EnableFeignClients
@SpringBootApplication
public class ClientApplication {
    public static void main(String[] args) {
        SpringApplication.run(ClientApplication.class,args);
    }
}

如果忘记添加该注解,会报自己定义的FeignClient注入不进去的错

编写接口Interface写FeignClient

格式大致像如下方式

@FeignClient(
        name = "userService",
        url = "http://localhost:8081/api/server"
)
//from fhadmin.cn
public interface UserFeignClient {
    @RequestMapping(value = "/getUserInfo",method = RequestMethod.GET)
    @ResponseBody
    String getUserInfo();
}

如果未为FeignClient设置name,也会报错,会报一个没有name的错,一看就能明白

posted @   m17054598469  阅读(328)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
点击右上角即可分享
微信分享提示