@ConditionalOnProperty 在带有 @Configuration 的 TYPE 级别

Jar*_*uba 1 java spring

是否可以@ConditionalOnProperty在 TYPE 级别上使用,以便查看/评估在非默认属性文件中定义的属性?

以下似乎仅在默认属性文件中定义属性时才起作用,即在 application.properties

@Configuration
@ConditionalOnProperty(prefix = "jmx.rmi", value = "enabled")
public class JmxConfiguration {
    // JMX related stuff
}
Run Code Online (Sandbox Code Playgroud)

Nik*_*nko 5

@ConditionalOnPropertyorg.springframework.core.env.Environment bean 中提取数据。这取决于你如何填充它。您可以显式声明多个属性文件:

@PropertySources({
        @PropertySource(name = "default", value = "classpath:application.properties"),
        @PropertySource(name = "custom", value = "file:custom.properties", ignoreResourceNotFound = true)
})
public class SpringBootApplication {...}
Run Code Online (Sandbox Code Playgroud)

并且这两个文件的内容将被附加到 Environment