在spring application.properties中展开时缺少maven属性的默认值

在spring application.properties中展开时缺少maven属性的默认值,spring,maven,properties,pom.xml,configurationproperties,Spring,Maven,Properties,Pom.xml,Configurationproperties,如果在应用程序.properties中定义的属性@property.缺席无法展开(它未在pom.xml中定义),则绑定值为文本@property.缺席。是否有一种简单的方法可以使用自定义默认值(例如null)覆盖此设置,特别是在自动配置中结合@ConfigurationProperties?application.yml文件: test: property: @property.absent@ 配置属性类: @ConfigurationProperties("test") public cl

如果在
应用程序.properties
中定义的属性
@property.缺席
无法展开(它未在
pom.xml
中定义),则绑定值为文本
@property.缺席
。是否有一种简单的方法可以使用自定义默认值(例如null)覆盖此设置,特别是在自动配置中结合
@ConfigurationProperties

application.yml文件:

test:
 property: @property.absent@
配置属性类:

@ConfigurationProperties("test")
public class TestConfigurationProperties {

private String property = "your default value";

//Getters and Setters

}
application.yml文件:

test:
 property: @property.absent@
配置属性类:

@ConfigurationProperties("test")
public class TestConfigurationProperties {

private String property = "your default value";

//Getters and Setters

}

是的,我试过了,但不知怎么的,没用。为了使问题具体化,这里有一个简化的项目说明了这一点:您没有使用'@Value'注释来实现您的目的,请在'@Configuration'属性中使用常量值,如private String缺席=“Hello”;是,未在
ConfigurationProperties
中添加
@Value
,因为它不起作用。理想情况下,我希望将复杂的嵌套配置属性映射到源代码(使用ConfigurationProperties)的好处与默认值结合起来。在这种情况下,尝试分配默认值,如private String a=“default”是的,我也尝试过,如果属性在
应用程序.properties
中根本不存在,这将起作用。然而,在本例中,它仍然默认为
@缺席@
。是的,我尝试过,但不知何故没有起作用。为了使问题具体化,这里有一个简化的项目说明了这一点:您没有使用'@Value'注释来实现您的目的,请在'@Configuration'属性中使用常量值,如private String缺席=“Hello”;是,未在
ConfigurationProperties
中添加
@Value
,因为它不起作用。理想情况下,我希望将复杂的嵌套配置属性映射到源代码(使用ConfigurationProperties)的好处与默认值结合起来。在这种情况下,尝试分配默认值,如private String a=“default”是的,我也尝试过,如果属性在
应用程序.properties
中根本不存在,这将起作用。但是,在本例中,它仍然默认为
@缺席@