私は文字列から設定を解析するときに置換を解決できますが、マップやファイルから解析するときは置き換えられません。タイプセーフな設定 - map/fileから解析して解決する
import java.io.File
import com.typesafe.config.{Config, ConfigFactory}
import scala.collection.JavaConversions.mapAsJavaMap
val s: String = "a = test, b = another ${a}"
val m: Map[String, String] = Map("a" -> "test", "b" -> "another ${a}")
val f: File = new File("test.properties") // contains "a = test\nb = another ${a}"
val cs: Config = ConfigFactory.parseString(s).resolve
val cm: Config = ConfigFactory.parseMap(mapAsJavaMap(m)).resolve
val cf: Config = ConfigFactory.parseFile(f).resolve
println("b from string = " + cs.getString("b"))
println("b from map = " + cm.getString("b"))
println("b from file = " + cf.getString("b"))
> b from string = another test
> b from map = another ${a}
> b from file = another ${a}
私はそれが変数のプレースホルダは、実際には同じ方法で扱われていないことを目に見えるのです、すぐに解決しない:私は多分ちょうど文字列にマップ/ファイルを変換することができますが、への道がある
val cs: Config = ConfigFactory.parseString(s)
val cm: Config = ConfigFactory.parseMap(mapAsJavaMap(m))
val cf: Config = ConfigFactory.parseFile(f)
> cs: com.typesafe.config.Config = Config(SimpleConfigObject({"a":"test","b":"another "${a}}))
> cm: com.typesafe.config.Config = Config(SimpleConfigObject({"a":"test","b":"another ${a}"}))
> cf: com.typesafe.config.Config = Config(SimpleConfigObject({"a":"test","b":"another ${a}"}))
をライブラリがそれを処理するようにしますか?
多かれ少なかれ同様の説明をして、同じことを尋ねることを、ライブラリの[Githubのページ](https://github.com/typesafehub/config/issues/76)上の問題があります以下のフェデリコの答えに。 –