關于這個錯有可能有很多的原因引起,比如由于版本問題引起的,還有注解原因等,要結合自己實際的情況來解決這個問題,隻供參考。
項目場景:
springboot項目 工具類、接口分成每個小子產品,項目之間進行互相引用,而在父類項目中需要應用子類項目中編寫的 openFeign接口
問題描述:
在啟動類中添加了相關注解卻掃描不到 關于openFeign定義的接口,但是如果把 openFeign 定義的接口移到啟動類所在的項目中就沒有問題,猜想如果不能掃描到子類項目中的接口,service應該也掃描不到,但是,service等相關接口都可以正常調用。 代碼如下:
@EnableFeignClients
@EnableDiscoveryClient
@SpringBootApplication
public class Application
{
public static void main( String[] args )
{
SpringApplication.run(Application.class, args);
}
}
解決方案:
@EnableFeignClients(basePackageClasses = com.lsmy.bi.biz.utils.RMICallService.RMICallService.class)
如果openFeign定義的接口在其他子產品當中,使用時需要指定具體的接口類才能掃描到該接口。估計這就是 @FeignClient 和其他注解(例如:@Service、@Component)的掃描機制的差別吧,如有大神知道詳細原因,跪求指正。