【问题标题】:Unable to override vm.args in rebar generated release无法在钢筋生成的版本中覆盖 vm.args
【发布时间】:2011-05-27 12:27:55
【问题描述】:

我正在尝试覆盖使用 Rebar 发布的配置。我想自动修改 vm.args 文件以对 VM 使用 -sname chat 参数,而不是默认的 -name chat@127.0.0.1

如果我理解正确,子目录files 包含在我使用rebar create-node nodeid=chat 时将被复制到发布目录中的配置文件版本。我没有强制覆盖,我已经用我想要使用的值修改了文件中的版本。它没有通过发布。每当我重新创建版本时,它都会使用默认值覆盖文件 ./etc/vm.args。我是否错误地使用了钢筋?

这是我一直在做的(在 Makefile 中)以生成发布:

gen-rel:
    rm -rf ./rel/*
    rebar create-node nodeid=chat
    rebar generate

start:
    ./rel/chat/bin/chat start

stop:
    ./rel/chat/bin/chat stop

ping:
    ./rel/chat/bin/chat ping

rebuild: stop compile gen-rel start ping

PS:这就是我应该使用 rebar 构建和调试的方式吗?我有另一个节点要连接到它,我认为创建和运行版本是让我的版本可访问的最快和最简单的方法...

【问题讨论】:

    标签: templates parameters erlang


    【解决方案1】:

    create-node rebar 子命令应该只运行一次,而不是每次在generate 之前运行。如果您从 gen-rel 生成目标中删除 create-node 行并使用覆盖编辑 rel/files/vm.args 文件,那么您应该会发现生成的版本现在将包含您的覆盖。

    回顾步骤:

    1. 从您的 make 文件中删除 rebar create-node nodeid=chat 行(只需运行一次)。
    2. 使用您的覆盖更新rel/files/vm.args 文件。
    3. 运行make rebuild
    4. 在您丢失之前将您的 rel/files 覆盖更改提交到您的 SCM/VCS 存储库;)

    HTH

    【讨论】:

    • 这个文件 vm.args 所在的位置 mate
    猜你喜欢
    • 2023-04-01
    • 2012-06-26
    • 2012-11-16
    • 2012-04-28
    • 1970-01-01
    • 2015-05-12
    • 2017-04-05
    • 2012-07-14
    • 2013-08-05
    相关资源
    最近更新 更多