要求

要让发布处理能正常运作,运行时系统需要知道目前正在运行哪个发布。它必须能(在运行时)更改系统如果重启后要使用的启动脚本的系统配置文件,例如在系统崩溃之后通过 heart 。因此,Erlang必须作为一个嵌入式系统启动,更多信息请参考嵌入式系统

为了让系统重启能正确运行,系统启动还必须启用心跳监控,请参见 erl(1)heart(3)

其他要求:

  • 包含在发布包中的启动脚本必须是从发布包自身的 .rel 生成得来的。在升级或降级的执行过程中,关于应用的信息都是从该脚本获得的。
  • 系统必须使用且仅用一个系统配置文件,名叫 sys.config 。如果存在,那么创建发布包的时候会自动包含该文件。
  • 一个发布的所有版本,除了第一个,必须包含一个 relup 文件。如果存在,那么创建发布包的时候会自动包含该文件。