3

我的 Spring Boot 应用程序在忽略config.xml 文件中设置为 true 的ignoreUnresolvablePlaceHolders时遇到问题。

我明确设置了这些选项:

<property name="ignoreUnresolvablePlaceholders" value="true" />
<!-- <property name="localOverride" value="false" /> -->
<property name="ignoreResourceNotFound" value="true" />

它在 Junit 中运行良好,但是当我将我的应用程序作为 Spring Boot 运行时,它会引发原因:java.lang.IllegalArgumentException:启动时无法解析占位符

当我像这样添加 Spring Profiles 时,一切都开始失败:

<beans profile="default,dev">

任何帮助将不胜感激...

4

1 回答 1

0

默认情况下,如果 SpringBoot 无法读取属性文件,则会抛出错误。如果您希望它忽略不可解析的属性源并且不引发任何错误,则将属性 ignoreResourceNotFound 设置为 true 或将属性 ignoreUnresolvablePlaceHolders 设置为 true,如下所示。

@配置

@PropertySource(name="unknown",
value="classpath:${unresolvable}/unknown.properties",

                ignoreResourceNotFound=true)

公共类 SpringPropertySourceIgnoreUnresolvableErrorExample {

//....

}

有关更多信息,您可以参考以下链接 https://www.javarticles.com/2016/01/spring-propertysources-annotation-example.html

于 2020-06-29T06:00:35.270 回答