2017-01-23 41 views
6

我得到了我的應用程序的春天雲服務器,在啓動時提供公共屬性文件。春天的雲配置 - 加載額外的文件

'正常'功能工作正常。應用程序獲取文件的層次結構並獲得對加載參數的完全訪問權限。

Application.properties 
Application-<profile>.properties 
<applicationname>.properties 
... 

現在的問題: 我如何可以加載通用命名旁邊有一個配置文件?

如果我在repositoy中存儲另一個文件,例如sharedCommonServers.properties,我怎樣才能加載這個文件另外使用配置服務器? 此文件包含一些但不是所有程序使用的屬性。

預先感謝您!

亨德里克

+0

'@PropertySource(「classpath:sharedCommonServers.properties」)',只需將其添加到您的應用程序類。 –

+0

應使用雲配置服務器加載sharedCommonServers.properties。我將你的行添加到了配置中,但似乎沒有加載它。是對的,這一行只會從本地存儲裝載文件,還是應該使用配置服務器? –

+0

請參閱[此答案](http://stackoverflow.com/a/41374808/390513),它應該是有幫助的。 – Kane

回答

4

好的,至少我找到了解決方案:

我把雲配置的正常應用上下文。 在這種情況下,我將我的文件sharedCommonServers.properties作爲具有特殊配置文件的默認應用程序屬性文件。

重命名:

'sharedCommonServers.properties' to 'application-commonServers.properties' 

通過與「commonServers」春天的雲配置,那麼除了獲取其擴展配置文件設置。

注意其他配置文件行中沒有重疊的屬性鍵。

所以,在我的環境,當我設置...

-Dspring.profiles.active=prod,commonServers' 

...我得到我的默認督促配置和那些標記爲「commonServers的個人資料。

application.properties 
application-prod.properties 
application-commonServers.properties // the additional one 
<appname>.properties 
<appname>-prod.properties 
// and <appname>-commonServers.properties if I would need it 

謝謝您的建議和想法!