spring boot项目将依赖关系类定义为spring bean

问题描述 投票:1回答:1

我在包裹服务中声明了一项服务,例如:

import a.b.c.d.soapapim.SoapApimMiddlewareService;

@Service
@EnableDefaultExceptionHandling
public class MyService{
    private final SoapApimMiddlewareService myService;

    public MyService(SoapApimMiddlewareService myService){
        this.myService = myService;   
    }

    public Response pullEvents(numEvents){
        myService.pullEvents(numEvents);
    }

}

SoapApimMiddlewareService是我的春季启动项目中的依赖项,该依赖项在项目a.b.c.d.soapapim中的项目的pom.xml中声明。>

在我的application.java中:

@ComponentScan({"a.b.c.d.soapapim", "service", "scheduler"})
SpringBootApplication
@EnableScheduling
public class Application implements WebMvcConfigurer {´

    public static void main(String[] args){
        SpringApplication app = new SpringApplication(Application.class);
        app.setRegisterShutdownHook(false);
        app.run(args);
    }

}

我也有一个调度程序:

@Component
public class Scheduler {

    private MyService myService;

    @Scheduled(fixedRate = 1200)
    public void myScheduledTask(){
        myService.pullEvents(1);
    }
}

我收到以下错误:

[UnsatisfiedDependencyException:创建名称为MyService的bean时出错,没有类型为'a.b.c.d.soapapim.SoapApimMiddlewareService'的合格bean]

我无法注释该类,因为它是我无法访问的依赖项。我只是将其声明为对项目的pom.xml的依赖。

如何将这个bean放入spring boot应用程序的上下文中?

我在包服务中声明了一项服务,例如:import a.b.c.d.soapapim.SoapApimMiddlewareService; @Service @EnableDefaultExceptionHandling公共类MyService {私有最终...

java spring spring-boot
1个回答
0
投票

您可以使用config类中的@Bean注释将其声明为spring bean

© www.soinside.com 2019 - 2024. All rights reserved.