3

config.xml ファイルで true に設定されたignoreUnresolvablePlaceHoldersを無視する Spring Boot アプリケーションに問題があります。

これらのオプションを明示的に設定しています。

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

Junit では問題なく動作しますが、アプリを Spring Boot として実行すると、Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder on startup がスローされます。

次のように Spring プロファイルを追加すると、すべてが失敗し始めました。

<beans profile="default,dev">

どんな助けでも大歓迎です...

4

1 に答える 1

0

デフォルトでは、SpringBoot がプロパティ ファイルを読み取れない場合、エラーがスローされます。解決できないプロパティ ソースを無視し、エラーをスローしないようにする場合は、以下のように属性 ignoreResourceNotFound を true に設定するか、属性 ignoreUnresolvablePlaceHolders を true に設定します。

@構成

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

                ignoreResourceNotFound=true)

public class SpringPropertySourceIgnoreUnresolvableErrorExample {

//....

}

詳細については、以下のリンクを参照してください https://www.javaarticles.com/2016/01/spring-propertysources-annotation-example.html

于 2020-06-29T06:00:35.270 に答える