[英]How reuse properties in typesafe config files?
考慮以下文件:
application.conf
app {
port = 5000
}
reference.conf
akka {
cluster {
seed-nodes = ["akka.tcp://sysName@localhost:"${app.port}]
}
}
因此,當我運行ConfigFactory.load()
它將失敗,因為${app.port}
未出現在reference.conf中。
但是加載算法很明確reference.conf
已加載並與application.conf
合並。 有沒有一種方法可以將application.conf
和“ include” reference.conf
加載到其中?
重要
我試過在application.conf
的第一行添加include "reference.conf"
並沒有幫助。
您可以使用file("")
語法包含文件。
include file("reference.conf")
參見https://github.com/typesafehub/config/blob/master/HOCON.md#include-syntax
根據Typesafe Config 文檔 :
這就意味着
reference.conf
堆棧必須是獨立的。 您不能保留由application.conf
提供的未定義值${foo.bar}
,或者以您希望允許application.conf
覆蓋的方式引用${foo.bar}
。 但是,application.conf
可以在reference.conf
中reference.conf
${foo.bar}
。
該文檔還列出了一些可能的解決方法:
- 將
application.conf
與reference.conf
一起放在庫jar中,其值供以后解決。- 在代碼中添加一些邏輯,而不是在配置本身中建立值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.