使用 meta-inf 自动装配 bean
Autowire bean with meta-inf
我有自己的带有 spring 组件的 jar 文件。我正在尝试在另一个项目中自动装配这个 bean,但没有 @Import
或 @ComponentScan
我无法做到这一点。是否可以在没有额外注释的情况下构建 jar 并在另一个项目中使用它的 bean?
例如我需要的:
@Configuration
public class Config {
@Bean
public String init(@Autowired DistributorMessageSender distributorMessageSender) {
WebSocketMessage webSocketMessage = WebSocketMessage.builder().build();
distributorMessageSender.send(Channel.WEBSOCKET, webSocketMessage);
return new String();
}
}
我想避免的事情:
scanBasePackages = {"app", "distributor.client"}
我找到的解决方案是:构建我自己的自动配置 class。
它允许您在没有任何导入注释的情况下从 jar 自动装配 bean。
我遵循的指南:https://docs.spring.io/spring-boot/docs/2.0.0.M3/reference/html/boot-features-developing-auto-configuration.html#boot-features-locating-auto-configuration-candidates
我有自己的带有 spring 组件的 jar 文件。我正在尝试在另一个项目中自动装配这个 bean,但没有 @Import
或 @ComponentScan
我无法做到这一点。是否可以在没有额外注释的情况下构建 jar 并在另一个项目中使用它的 bean?
例如我需要的:
@Configuration
public class Config {
@Bean
public String init(@Autowired DistributorMessageSender distributorMessageSender) {
WebSocketMessage webSocketMessage = WebSocketMessage.builder().build();
distributorMessageSender.send(Channel.WEBSOCKET, webSocketMessage);
return new String();
}
}
我想避免的事情:
scanBasePackages = {"app", "distributor.client"}
我找到的解决方案是:构建我自己的自动配置 class。 它允许您在没有任何导入注释的情况下从 jar 自动装配 bean。 我遵循的指南:https://docs.spring.io/spring-boot/docs/2.0.0.M3/reference/html/boot-features-developing-auto-configuration.html#boot-features-locating-auto-configuration-candidates