1

我正在从 Groovy 源代码生成类并将它们存储在GroovyClassLoader. 这些类有@Configuration注释。它们在包装中a.b.c.d.e我希望他们配置我的 spring 上下文。我将线程上下文类加载器设置为 this GroovyClassLoader

我的 Spring Boot 应用程序设置为扫描包@ComponentScan("a.b.c")。我可以确认 Spring Boot 确实在使用它GroovyClassLoader,并且可以使用此类加载器获取这些生成的类。

在类生成完成并将类存储在GroovyClassLoader.

但是,Spring Boot 忽略了这些类。我怀疑组件扫描是通过存储类的罐子和目录进行的,而这些生成的类没有在这些地方实现?

我应该如何将这些生成的配置类提供给 Spring Boot?

4

1 回答 1

0

由于在启动 Spring Boot 上下文之前已经生成了类,因此可以使用SpringApplicationBuilder.sources(Class<?>...) 方法注册它们。

于 2020-05-02T21:01:45.947 回答