[英]How is configuration read in AKKA
我正在為我用java編寫的akka應用程序創建自定義配置,如下所示
application.conf
akka {
actor {
debug {
# enable DEBUG logging of actor lifecycle changes
lifecycle = on
}
}
}
我不知道如何加載此配置。 從文檔中不清楚是否需要在創建actrSystem時顯式加載它,或者在運行jar時它是否需要在類路徑中。 在這兩種情況下,我都可以看一個例子
這是一個maven項目,配置文件在src / main / resources下
我看到applucation.conf存在於target / classes下。 是嗎?
使用ConfigFactory,您可以從src / main / resources加載application.conf文件,不一定需要ActorSystem才能使用它
根據akka doc http://doc.akka.io/docs/akka/2.4/general/configuration.html
一個簡單的測試
import com.typesafe.config.Config;
import com.typesafe.config.ConfigFactory;
public class ConfigFactoryTest {
public static void main(String[] args) {
Config conf = ConfigFactory.load("application.conf");
System.out.println(conf.getString("akka.actor.debug.lifecycle")); //should be 'on'
}
}
也可以使用withFallback
方法http://doc.akka.io/docs/akka/2.4/general/configuration.html#Reading_configuration_from_a_custom_location
假設您有另一個名為fallback.conf
屬性文件
akka {
actor {
fallback = "fallback"
}
}
Config fallback = ConfigFactory.load("fallback.conf")
Config conf = ConfigFactory.load("application.conf").withFallback(fallback);
System.out.println(conf.getString("akka.actor.fallback")); //fallback
在這里你可以找到例子:
https://github.com/typesafehub/config/tree/master/examples/java
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.