私はあなたがこの問題https://github.com/spring-cloud/spring-cloud-netflix/issues/466に関連する問題があると思われます。
spring applicationContextは、存在する特定のアノテーションを持つBeanを検索するためのユーティリティメソッドを提供します。
解決策には、applicationContextの起動をブートストラップし、そこに重複する注釈を検索することが含まれます。
@FeignClientでさらに注釈が付けられた@RequestMapping Beanをすべて検索するApplicationListenerを登録する必要がある場合は、この機能を使用します。
実装は次のようになります
:
@Component
public class ContextStartupListener
implements ApplicationListener<ContextRefreshedEvent> {
@Autowired
private ApplicationContext applicationContext;
@Override
public void onApplicationEvent(ContextRefreshedEvent event){
for(String beanName : applicationContext.getBeanNamesForAnnotation(RequestMapping.class)) {
if(applicationContext.findAnnotationOnBean(beanName, FeignClient.class)!=null){
throw new AnnotationConfigurationException("Cannot have both @RequestMapping and @FeignClient on "+beanName);
}
}
}
}