Akka 1.3 能够查找配置变量,并返回一个选项,因此可以指定默认值。
Akka 2.0 没有这个。那么如何检查变量是否存在,如果未定义则指定默认值?
例子:
在 1.3 中:config.getString("myvariable", "mydefault") // 默认指定
在 2.0 中: GlobalActorSystem.settings.config.getString("myvariable") //无法指定默认值
您不应该将默认值放在代码中,而是将默认值放在 jar 的 /resources 文件夹中的 reference.conf 中。在此处阅读有关 Typesafe Config 项目的信息:https ://github.com/typesafehub/config
您可以使用config.hasPath
查明是否已指定设置。但我建议仅在您想为省略设置附加特殊含义的情况下使用。如果您只想拥有一个默认值,reference.conf
请在包含该值的项目(在 JAR 的根目录)中包含一个。