覆盖otp应用程序依赖项的设置/环境的正确方法

时间:2017-01-20 14:17:50

标签: erlang otp

我写了一个非常简单的OTP应用程序A.由于erlang.mk,此应用程序的默认设置在.app文件中设置。

我现在使用我的应用程序A作为我的新应用程序B中的依赖项。此应用程序需要A的不同设置而不是默认设置。

我的应用程序B覆盖其依赖项环境的正确方法是什么,应用程序A?

几点想法:

  • 由于B需要A,因此首先启动A,因此应用程序:set_env / 3不会将其删除。
  • 如果可能的话,我想避免弄乱启动参数,例如-config或直接在启动命令中传递环境。

1 个答案:

答案 0 :(得分:1)

如何将A分成A1和A2。

  • A1是"无配置"版本的A,
  • A2依赖于A1,并为其提供必要的环境以完成与A。
  • 相同的服务

然后B将直接或通过第三个应用程序A3对A1进行相同的操作。