2017-02-12 3 views
3
私は春ブーツのように複数の '.yml' を設定しようとしている

...なぜ@ConfigurationPropertiesのメソッドの場所を非難しましたか?

application.yml

spring: 
    profile: local 

api.yml

spring: 
    profile: local 
myapi: 
    url: localhost/... 

だから、私が見つけたの場所方法@ConfigurationPropertiesにあります。 しかし、それはどのように私はこのような状況を設定することができ1.4.xのに

Deprecated. as of 1.4 in favor of configuring the environment directly with additional locations 

を廃止されましたか?

答えて

1

spring.config.nameを使用して、検索対象の構成ファイル名を変更できます。カンマ区切りリストを使用して複数の名前を設定できます。あなたの場合、application,apiに設定したいと思うでしょう。

+0

残念ながら、このプロパティは 'spring.config.name'というプロパティが設定されていないので、私たちの' @ SpringBootTest'クラスではうまくいきません。代わりに、 'properties'属性を介して注釈付きテストクラスすべてに明示的に設定することもできます。しかし、私にとっては、これは非効率的なようです。テストにも対応するソリューションはありますか?前もって感謝します! –

+0

これを設定する共通のスーパークラス、またはPropertySourceをアプリケーションコンテキストの環境に追加するContextCustomizerを使用できます。 –

+0

Ok。ありがとう、私はそれを試してみましょう。 –

関連する問題