Scala Akka:如何从非参与者对象中读取配置
在akka中,如果在actor中,则可以通过system.settings.config轻松读取全局配置 但是,如果我有一个普通的单例对象需要从actorSystem读取配置,我应该怎么做 假设我不想再次使用configFactory执行相同的配置文件解析/回退 谢谢Scala Akka:如何从非参与者对象中读取配置,scala,akka,config,Scala,Akka,Config,在akka中,如果在actor中,则可以通过system.settings.config轻松读取全局配置 但是,如果我有一个普通的单例对象需要从actorSystem读取配置,我应该怎么做 假设我不想再次使用configFactory执行相同的配置文件解析/回退 谢谢 Leon正如cmbaxter所说,如果你有对actor系统的引用,那么就使用它,如果你没有,那么,也许你可以修改你的代码,这样你就有了对它的引用。如果这是不可能的,那么您可以使用configFactory读取配置,并将其放在您的s
Leon正如cmbaxter所说,如果你有对actor系统的引用,那么就使用它,如果你没有,那么,也许你可以修改你的代码,这样你就有了对它的引用。如果这是不可能的,那么您可以使用configFactory读取配置,并将其放在您的singleton可以访问的地方,并且在创建actor系统时将该配置用作actor系统的参数,而不是让它从磁盘读取配置
object MyConfig {
private val myConfig = ??? // however you want to load your config
private val regularConfig = ConfigFactory.load();
// now you can access it from anywhere you want
val config = myConfig.withFallback(regularConfig);
}
其他地方:
val system = ActorSystem("my-system", MyConfig.config)
如果您有一个对
ActorSystem
本身的引用,那么它与system.settings.config
一样简单(假设该引用名为system
)。如果您没有对ActorSystem的引用,则不确定您能做什么。事实上,它是一个完全独立的零相关性库: