• 生成启动脚本

    生成启动脚本

    在SASL模块 systools 里面有很多可以用来构建和检验发布的工具。函数读取 .rel.app 文件并执行语法和依赖性检查。函数 systools:make_script/1,2 用于生成启动脚本(参见系统原则)。

    1. 1> systools:make_script("ch_rel-1", [local]).
    2. ok

    这就创建了一个启动脚本,包括可阅读的版本 ch_rel-1.script 和运行时系统所使用的二进制版本 ch_re-1.boot 。 “ ch_rel-1 ”是 .rel 文件去掉扩展名的名称。 local 是表示在启动脚本中用到的应用所处的目录的一个选项,没有使用 $ROOT/lib 。( $ROOT 是安装了的发布的根目录)对于本地测试生成的启动脚本非常有用。

    当使用启动脚本启动Erlang/OTP时, .rel 文件中的所有应用都会被自动加载和启动:

    1. % erl -boot ch_rel-1
    2. Erlang (BEAM) emulator version 5.3
    3.  
    4. Eshell V5.3 (abort with ^G)
    5. 1>
    6. =PROGRESS REPORT==== 13-Jun-2003::12:01:15 ===
    7. supervisor: {local,sasl_safe_sup}
    8. started: [{pid,<0.33.0>},
    9. {name,alarm_handler},
    10. {mfa,{alarm_handler,start_link,[]}},
    11. {restart_type,permanent},
    12. {shutdown,2000},
    13. {child_type,worker}]
    14.  
    15. ...
    16.  
    17. =PROGRESS REPORT==== 13-Jun-2003::12:01:15 ===
    18. application: sasl
    19. started_at: nonode@nohost
    20.  
    21. ...
    22. =PROGRESS REPORT==== 13-Jun-2003::12:01:15 ===
    23. application: ch_app
    24. started_at: nonode@nohost