SpringCloud配置遇到的Feign bean not found问题

/ Java / 没有评论 / 2856浏览

写这篇笔记的原因是在配置微服务过程中,出现了如下错,原因很简单,但是因为不够熟悉困惑了一阵子。Field userFeignClient in cn.panding.DemoaController required a bean of type 'cn.pangding.feign.UserFeignClientB' that could not be found.Action:Consider defining a bean of type 'cn.pangding.feign.UserFeignClientB' in your configuration.

package com.panding.web.tpay;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
import org.springframework.cloud.openfeign.EnableFeignClients;

@SpringBootApplication(scanBasePackages = {
        "com.panding.*",
        "com.pangding.*",
        "com.yanzuoguang.*",
        "org.springframework.jdbc.*"
})
@EnableEurekaClient
@EnableFeignClients
public class TPayApp {

    public static void main(String[] args) {

        SpringApplication.run(TPayApp1.class, args);
    }
}

后改为如下代码解决:

package com.panding.web.tpay;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
import org.springframework.cloud.openfeign.EnableFeignClients;

@SpringBootApplication(scanBasePackages = {
        "com.panding.*",
        "com.pangding.*",
        "com.yanzuoguang.*",
        "org.springframework.jdbc.*"
})
@EnableEurekaClient
// 指定扫描的包
@EnableFeignClients({
        "com.panding.*",
        "com.pangding.*",
})
public class TPayApp {

    public static void main(String[] args) {

        SpringApplication.run(TPayApp1.class, args);
    }
}