rebar clean不会删除sub_dirs中的工件

时间:2015-10-25 06:59:48

标签: erlang rebar

我正在使用螺纹钢2.6.1(钢筋2.6.1 R15B03 20150928_141254 git 2.6.1)。我有一个库目录:

libs
  -- lib1
  -- lib2
  rebar.config

libs目录中的rebar配置只是:

{sub_dirs, [
    "lib1",
    "lib2"
]}.

我意识到使用rebar clean进行编译后实际上并没有清除lib1和lib2中的ebin目录。在bash wiki上找不到任何doc。没有清理ebin的原因是什么?

1 个答案:

答案 0 :(得分:0)

Rebar根据'背景'运作它正在处理的目录中,它决定目录是app目录还是rel目录,如果它不是它不会播放,或者至少它耗尽了它可能的操作。

这对于避免事故来说可能是非常明智的,因为螺纹钢在设计上非常模块化,无论是在提供核心功能方面,还是通过螺纹钢环境配置方式允许您进行扩展,以及提供特定构建案例的插件模块。

我的猜测是你的子目录不被认为是适合清理的,可能是因为没有app文件或app.src文件存在于它可以找到的合理位置。我的钢筋将清理子目录,如果我有一个" ./ subdir / ebin / * .app"或" ./ subdir / src / * .app.src"例如,如果两个都被删除,它就不会......

我并不是说这是一个解决方案,但同样地,如果你的子目录看起来像一个rel目录,那么也许它会为你清理它 - 我还没检查过 - 但是你可以通过添加" reltool.config"自己尝试一下。在那里存档。