1

我密切关注有关依赖项管理发布处理的 rebar 文档,并尝试创建一个类似于我之前的问题之一的已接受答案中描述的发布。

但是,我不能将偏航作为 OTP 应用程序包含在钢筋生成的 OTP 版本中。

这是我所做的:

  • 根据官方钢筋文档创建一个版本(完成,可以使用 /rel/myapp/bin/myapp start 运行一个简单的 gen_server)
  • 在项目目录下的rebar.config文件中指定yaws依赖
  • 运行rebar get-deps(这会拉偏航和 ibrowse)
  • 将此添加到reltool.config{app, yaws, [{incl_cond, include}]}
  • 将 yaws 添加到应用程序列表中myapp.app.src
  • rebar compile generate

... ==> Leaving directory '/myapp/deps/yaws/rel' ==> yaws (compile) yaws.erl:13: can't find include file "yaws_appdeps.hrl" yaws.erl:220: undefined macro 'YAWS_APPDEPS' yaws.erl:174: function start_app_deps/0 undefined yaws.erl:194: function start_app_deps/0 undefined ERROR: Command [compile] failed!

笔记:

  • 官方的 yaws文档似乎对这个问题没有很好的解释。

  • 如果我将 yaws 更改为牛仔,我不会收到这样的错误。

更新

这是我的目录结构:

. ├── apps │   └── myapp ├── deps │   ├── ibrowse │   └── yaws └── rel └── files

4

1 回答 1

0

打开yaws的src目录。缺少的“yaws_appdeps.hrl”包含文件可能具有“.ini”或“in”扩展名。删除它并再次编译

于 2016-02-20T09:49:42.593 回答