发布版本中的胡须冲突

时间:2013-12-05 11:19:57

标签: erlang rebar

我在项目中使用了wooga的mustache.erl(https://github.com/wooga/mustache.erl)。当我尝试创建版本时,我得到一个错误,因为rebar使用这个mustache.beam文件而不是源文件中包含的文件。 我该怎么做才能解决这个冲突?

1 个答案:

答案 0 :(得分:0)

原因不在于rebar,而是发布工具搜索路径中的某些应用包含您发布的mustache.erl文件。 通常rel.config文件包含{lib_dirs, ["../.."]},强制释放工具在您的发布目录中搜索libs(apps)。见下面的例子。要解决此问题,请移动发布目录dipper(例如 - > you_release / you_release)或将包含相同文件(mustache.erl)的应用程序移动到其他位置。

├── your_release_directory
│   ├── deps
│   │   └── mustache
│   │       ├── ebin
│   │       │   ├── mustache.app
│   │       │   └── mustache.beam
│   │       └── src
│   │           ├── mustache.app.src
│   │           └── mustache.erl
│   ├── ebin
│   │   └── mustache.beam
├── rebar (or any other app contains mustache.erl)
│   ├── ebin
│   │   └── mustache.beam
│   ├── src
│   │   └── mustache.erl