原因
若依的openfeign有一个默认扫描路径,若依设置了默认扫描路径是 “com.ruoyi”,所以,如果自己新建的服务不是在这个包下面需要就会注入失败。
/**
* 自定义feign注解
* 添加basePackages路径
*
* @author ruoyi
*/
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@EnableFeignClients
public @interface EnableRyFeignClients
{
String[] value() default {};
String[] basePackages() default { "com.ruoyi" };
Class<?>[] basePackageClasses() default {};
Class<?>[] defaultConfiguration() default {};
Class<?>[] clients() default {};
}
解决方案
在启动类上开启feign服务的注解中加上自己要扫描的包。
@EnableCustomConfig
@EnableCustomSwagger2
@EnableRyFeignClients(basePackages = "com.xs")
@SpringBootApplication
@MapperScan("com.xs.mapper")
public class ProtocolApplication {
public static void main(String[] args) {
SpringApplication.run(ProtocolApplication.class, args);
System.out.println("《《----------协议层启动成功----------》》");
}
}