我正在尝试了解如何使用Rebar构建多应用程序Erlang OTP版本。
我的应用程序包括Webmachine,Riak和我自己设计的一些应用程序。到目前为止,我已经在应用程序根目录中成功运行了Rebar。但是Rebar bootstrap计划表明可能有更好的方法。 E.g:
“你现在有一个名为”rebar“的自包含脚本 您当前的工作目录。将此脚本放在路径中的任何位置 你可以使用rebar构建符合OTP标准的应用程序。“
我可以想到几种方法来做到这一点。但我想知道:
是否有首选约定:例如,将Rebar放在.erlang文件,/ usr / local / bin等等中?
非常感谢,
LRP
答案 0 :(得分:4)
我在/usr/local/bin
中保留了一份副本,我在创建新应用时使用了该副本。例如:
$ rebar create-app appid=myapp
我的所有项目都是使用rebar构建的,方法是将二进制文件放在项目的根目录中,并在我的Makefile中本地引用它,如here所示。在撰写本文时,这似乎是社区采用的惯例。例如,nitrogen,mochiweb,ibrowse和erlydtl都是以这种方式构建的。
就个人而言,我不是每个项目都包含螺纹钢二元的忠实粉丝,但我没有看到一个好的选择。对于那些路径上没有钢筋,或者路径上没有更新版本的人来说,它会让生活更轻松。
我怀疑这是暂时的情况。最终螺纹钢项目将开始减少提交量,我们都同意在我们的路径中保留一份副本。那时我们都可以停止包括它。当然,如果你的项目只是由你使用,那么这不是问题。