我从Groovy源代码生成类,并将它们存储在GroovyClassLoader
中。这些类具有@Configuration
注释。它们在a.b.c.d.e
包中。我希望他们配置我的spring上下文我将线程上下文类加载器设置为这个GroovyClassLoader
。
我的Spring Boot应用程序设置为扫描包@ComponentScan("a.b.c")
。我可以确认Spring Boot确实使用了这个GroovyClassLoader
,并且这些生成的类可以用这个类加载器获取。
在类生成完成并且类被存储在GroovyClassLoader
中之后,上下文被初始化。
然而,Spring Boot忽略了这些类。我怀疑组件扫描会通过存储类的jar和目录生成的类没有在这些地方具体化?
我应该如何将这些生成的配置类提供给Spring Boot?
由于在启动Spring Boot上下文之前已经生成了类,因此可以使用SpringApplicationBuilder.sources(Class<?>...)
注册它们方法