0

所以我建立了一个自定义的 Springboot 启动器和自动配置,一切都很好,代码都在本地 maven repo 中。

我什至检查了生成的罐子,一切看起来都很好。

无法将生成的文件加载到项目中,但是当我查看生成的 bes 时,没有自动配置(或自动配置本身)创建的 bean 的迹象:https ://github.com/orubel/spring-boot-starter -beapi/问题/37

项目代码可以在这里:https ://github.com/orubel/spring-boot-starter-beapi/blob/main/beapi-lib/build.gradle

我做错了什么,实现看不到豆子?

我尝试从 mavenLocal() 引入依赖项:

实现“io.beapi:beapi-lib:0.4” 实现“io.beapi:beapi-spring-boot-starter:0.4”

与:

实现“io.beapi:beapi-lib:0.4” 实现“io.beapi:beapi-spring-boot-autoconfigure:0.4”

两者都有相同的错误,即无法找到 AUTOWIRED bean(来自自动配置):

Consider defining a bean of type 'io.beapi.lib.service.PrincipleService' in your configuration.

如果我注释掉自动装配的 bean,它只会抛出 bean 为空的错误。

4

1 回答 1

0

好的解决了我的问题。

当我从通过启动器创建的库中实例化 bean 时,我必须对这些类执行“@ComponentScan”。

所以只需添加:

@ComponentScan(["io.beapi.lib.service"])

应用程序主类足以解决这个问题:)

于 2022-01-24T16:37:57.230 回答