【问题标题】:Akka default vs runtime configurationAkka 默认与运行时配置
【发布时间】:2015-06-04 00:52:01
【问题描述】:

我阅读了 Akka v2.3.11 文档(Java,not Scala),但仍然对配置的工作原理有些困惑。在第 2.9.2 节(“Akka 和 JAR 捆绑”)中它指出:

Akka 的配置方法在很大程度上依赖于每个模块/jar 都有自己的 reference.conf 文件的概念,所有这些都将被配置发现并加载。不幸的是,这也意味着如果您将多个 jar 放入/合并到同一个 jar 中,您还需要合并所有 reference.confs。否则所有默认值都将丢失,Akka 将无法运行。

对于 Akka 和演员来说是全新的,但作为 Java 开发人员已经 10 多年了,我之前从未在任何 JAR 中看到过 reference.conf 文件。那么 Akka 在这里说什么?他们是否暗示如果我的 Akka 项目使用 Guice 和 Guava,我需要为每个文件定义 reference.conf 文件?!?

另外,有人可以确认我对application.confreference.conf 的理解吗?我的理解是您应该定义一个包含默认 Akka 配置的 reference.conf,然后还定义一个覆盖它的 application.conf?如果这是真的,为什么首先使用reference.conf?为什么不直接使用application.conf?我很困惑。

【问题讨论】:

    标签: configuration akka


    【解决方案1】:

    Akka 使用类型安全配置库,请查看文档 https://github.com/typesafehub/config/blob/master/README.md,其中解释了 reference.confapplication.conf 之间的区别。

    基本上reference.conf 带有 Akka 库,除非将使用类型安全配置库的多个 jar(不是必需的 akka jar)合并到一个 jar 中,否则用户不应触摸它(但可以用作参考)。

    【讨论】:

    • 啊谢谢@kostya (+1) - 所以确认一下:(1) reference.conf 仅在 Akka 库(模块/插件)中可用,并且 Typesafe 配置库知道用application.conf 中指定的那些,是??再次感谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-16
    • 2013-04-17
    • 1970-01-01
    相关资源
    最近更新 更多