Spring 自定义弹簧@Profile注释

Spring 自定义弹簧@Profile注释,spring,spring-boot,annotations,Spring,Spring Boot,Annotations,我正在将我的@SpringBootApplication应用程序从springboot1.5更新到2.2,从spring4.3更新到5.2,并且我的自定义@Profile注释有问题 在旧版本中,我有注释 @Profile("sapConnector") public @interface SapConnectorProfile { } 每个属于“sapConnector”的bean都用@SapConnectorProfile注释进行了注释。当我运行这个应用程序时,我只定义了属性sprin

我正在将我的
@SpringBootApplication
应用程序从springboot1.5更新到2.2,从spring4.3更新到5.2,并且我的自定义
@Profile
注释有问题

在旧版本中,我有注释

@Profile("sapConnector")
   public @interface SapConnectorProfile {
}
每个属于“sapConnector”的bean都用
@SapConnectorProfile
注释进行了注释。当我运行这个应用程序时,我只定义了属性
spring.profiles.active=sapConnector
,它加载用这个注释注释的bean。如果我将属性更改为f.e.
spring.profiles.active=demoConnector
它不会加载任何带有
@SapConnectorProfile
注释的bean

在新版本的Spring中,即使属性
Spring.profiles.active=demoConnector
,也会加载用
@SapConnectorProfile
注释的所有bean

在新的春天,这是不可能的吗

如果我使用注解
@Profile(“sapConnector”)
而不是
@SapConnectorProfile
,配置文件工作正常


谢谢您的帮助。

我缺少
@Retention(RetentionPolicy.RUNTIME)
注释

当我使用以下各项时,一切正常:

@Retention(RetentionPolicy.RUNTIME)
@Profile("sapConnector")
public @interface SapConnectorProfile {
}

我创建的问题:

注释处理已在5.2中重新进行,因此这可能是一个回归。请您查看最新的Spring Boot 2.2.1快照,因为我们已经修复了这方面的问题。如果仍然失败,请用一个小样本创建一个问题,它也不适用于2.2.1.BUILD-SNAPSHOT。刚试过。接球不错,帕维尔。这是一个主要错误。一定要像@Stephane提到的那样制造问题