2

我不知道如何在 Chicago Boss 中自动启动“deps”应用程序。

使用applcation:which_applications()我可以看到一堆开始像“啤酒,牧场,牛仔..等”。如何开始我添加的另一个?

如果我去控制台并运行application:start(oauth2),就可以了。我可以启动它。

但是我尝试更改src/xxx.app.src并将其添加到{applications,[]},但不行。这不是加载/启动我所依赖的任何应用程序的地方吗?

但我也找不到老板如何加载和启动所有其他应用程序。

顺便说一句,这个 oauth2 应用程序不包含应用程序行为文件 (oauth2_app.erl),所以我不知道这是否相关。因为我可以手动启动它。

如此迷茫。任何帮助,将不胜感激。

另外:我记得我确实通过application:start(xxx)/priv/init/xxx_01_news.erl init函数中添加了来启动应用程序,但我认为这非常hackish。

4

1 回答 1

0

您可以使用rebar.config添加依赖项应用程序,然后以boss.config这种方式编辑文件:

  • 首先:在applications.
  • 第二:添加他们的具体配置如下。

boss.config文件:

[
   {boss, [
      {path, "./deps/boss"},
      {applications, [your_app_name, your_app_dep_1, your_app_dep_2]},
      {assume_locale, "en"},

%% ... other configuration

%% APPLICATION CONFIGURATIONS
   {your_app_name, []},
   {your_app_dep_1, []},
   {your_app_dep_2, []}                                                                                                                                                                  
].                  

编辑:这样 CB 期望另一个老板应用程序因此查找路由器文件并在找不到它时发出警告。但是,在其函数中启动依赖项init并不是一种肮脏的方式,我建议考虑一下。

于 2016-01-18T14:03:26.690 回答