簡體   English   中英

在CloudHub設置中起作用的屬性在屬性文件中不起作用

[英]Property that works in CloudHub settings is not working in properties files

我的應用程序在子目錄src / main / resources目錄中使用公共加密密鑰,該子目錄稱為keys。 為了在本地訪問此文件,我只需要將路徑設置為src/main/resources/keys/<mykey>.gpg

由於Cloudhub的結構不同,因此無法設置上述路徑,而必須將其設置為${app.home}/keys/<mykey>.gpg 當我直接在Cloudhub中設置屬性時,此方法有效,但是在屬性文件中設置屬性時,出現錯誤消息...

Could not resolve placeholder 'app.home' in string value 
"${app.home}/classes/keys/<mykey>.gpg"

我在本地運行時也無法解析該屬性。 我的猜測是,首先解析application-$ {ENV} .properties中的屬性,然后設置$ {app.home}屬性,最后解析Cloudhub屬性。

我的問題是,如何確保可以從屬性文件中正確解析$ {app.home},或者是否可以通過另一種方法不使用它來實現相同的目的? 理想情況下,我們不需要每次在Cloudhub中重新部署應用程序時都必須設置公共密鑰位置。

謝謝!

編輯:為了更加清楚,這是我在application-DEV-properties中設置屬性的位置: cibc.public.key.location=${app.home}/classes/keys/<mykey>.gpg

我認為在某些情況下這是Mule 3中的問題。 您可以嘗試在屬性占位符上設置ignore-unresolvable="true"嗎? 它應該告訴Spring移至下一個要查找的地方。

<context:property-placeholder location="your.properties" ignore-unresolvable="true"/>

更新也請嘗試將屬性拆分為兩個條目:

cibc.public.key.location=classes/keys/<mykey>.gpg

然后在您的Mule配置中:

identityFile="${app.home}/${cibc.public.key.location}" 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM