非常教程

Erlang 20参考手册

reltool

2.用法 | 2. Usage

2.1概览

本文档重点介绍该工具的图形部分。这些概念在模块reltool的参考手册中进行了解释

2.2系统窗口

系统窗口以该功能启动reltool:start/1。在启动时,该工具将处理所有beam文件和app文件,以便找出应用程序及其模块之间的依赖关系。一旦获得所有这些信息,就可以探索该工具。

系统窗口由四个主页面(标签)组成:

  • 系统设置
  • 应用
  • 释放

单击名称标签以显示其页面。

在库页面上,可以控制该工具将使用哪些源。该页被组织为一棵树,可以通过单击可展开/可折叠行开头的小符号来展开和折叠。

所述Root directory可以通过选择在显示的根目录的路径的线并点击鼠标右键进行编辑。在弹出的菜单中选择编辑。

库目录可以添加,编辑或删除。这是通过选择显示库目录路径的行并单击鼠标右键来完成的。在弹出的菜单中选择添加,编辑或删除。新库目录也可以通过选择该行Library directories并单击鼠标右键来添加。在弹出的菜单中选择添加。

可以添加、编辑或删除EScript文件。这是通过选择显示记录文件路径的行并单击鼠标右键来完成的。在弹出的菜单中选择添加、编辑或删除。还可以通过选择行添加新的说明符。Escript files然后点击鼠标右键。在弹出的菜单中选择Add。

当展开库和脚本时,将显示它们包含的应用程序的名称。双击应用程序名称可启动应用程序窗口。

系统设置

在系统设置页面上,可以控制一些全局设置,这些设置被用作所有应用程序的默认设置。将Application inclusion policyinclude包括那些没有明确排除的所有应用程序。有关详细信息,请参阅模块参考手册incl_cond(应用程序包含)和mod_cond(模块包含)reltool

“系统设置”页面相当不完整。

应用

应用程序页面上有四类应用程序。Included包含显式包含的应用程序。Excluded包含显式排除的应用程序。Derived包含直接由显式包含的应用程序或其他派生应用程序使用的应用程序。Available包含其余的应用程序。

选择一个或多个应用程序,然后单击应用程序列正下方的按钮以更改应用程序类别。例如,选择一个可用的应用程序,然后单击其勾号按钮将应用程序移动到所包含的类别。点击包含应用程序的勾号符号将把应用程序移回到可用类别。滴答声被撤消。

应用程序名称前的符号旨在描述应用程序的状态。有错误和警告符号表明有需要注意的事情。刻度符号表示应用程序已包含或派生,并且未检测到任何问题。十字符号表示该应用程序被排除或可用,并且未检测到任何问题。带有错误符号的应用程序将在每个类别中首先列出,并在最后列出警告和正常列表(ticks 和crosses)。

双击应用程序以启动其应用程序窗口。

释放

发布页面是不完整的和非常实验性的。

文件菜单

  • Display application dependency graph-打开一个应用程序强制图窗口。所有包含的和派生的应用程序及其依赖项都将显示在一个图表中。
  • Display module dependency graph-启动模块强制图窗口。所有包含的和派生的模块及其依赖关系都将显示在一个图表中。
  • Reset configuration to default
  • Undo configuration (toggle)
  • Load configuration-从文件加载新配置。
  • Save configuration-将当前配置保存到文件中。通常,只保存与其默认值不同的显式配置参数。但是,也可以保存带有或不带默认值以及带或不带派生值的配置。
  • Generate rel, script and boot files
  • Generate target system
  • Close - 关闭系统窗口及其所有子窗口。显示为图形的应用程序或模块之间的依赖关系从系统窗口的文件菜单中启动依赖关系图窗口。该图形描述了所有包含的和派生的应用程序/模块及其依赖关系。可以对图形执行一些有限的操作。节点可以移动,选择,锁定或删除。按住鼠标左键移动鼠标移动单个节点或整个图形。当释放鼠标左键时,按住Shift键可将节点锁定在固定位置。按下控制键和鼠标左键时,通过移动鼠标来选择多个节点。选定的节点可以通过点击一个合适的按钮来锁定,解锁或删除。用尽可能少的交叉链接绘制图形的算法称为力图。强制图由节点和节点之间的定向链接组成。每个节点与推斥节点相互推斥的斥力相关联。这个力可以用左滑杆或鼠标滚轮来调整。每条链路都与吸引力相互关联,使节点相互靠近。这个力量可以用右滑块调整。如果这个力量变得太强,图表将会不稳定。可以调整的第三个参数是链接的长度。它用中间滑块进行调整 这个力可以用左滑杆或鼠标滚轮来调整。每条链路都与吸引力相互关联,使节点相互靠近。这个力量可以用右滑块调整。如果这个力量变得太强,图表将会不稳定。可以调整的第三个参数是链接的长度。它用中间滑块进行调整 这个力可以用左滑杆或鼠标滚轮来调整。每条链路都与吸引力相互关联,使节点相互靠近。这个力量可以用右滑块调整。如果这个力量变得太强,图表将会不稳定。可以调整的第三个参数是链接的长度。它用中间滑块进行调整Freeze按钮开始/停止重绘图形。Reset将图形移动到窗口中间并将所有图形设置重置为默认值,但已删除的节点除外。2.3应用程序窗口通过双击应用程序名称来启动应用程序窗口。应用程序窗口由四个页面(标签)组成:
  • 应用程序设置
  • 模块
  • 应用依赖关系
  • 模块依赖

单击名称标签以显示其页面。

应用程序设置

Source selection policy在页面的部分中选择应用程序的版本。默认情况下,应用程序的最新版本被选中,但可以通过明确选择另一个版本来覆盖该版本。

请注意,为了reltool到应用程序版本进行排序,从而能够选择最新,要求该版本ID为唯一整数点的应用consits,例如12.03.17.1

默认情况下Application inclusion policy,系统级别用于所有应用程序。include如果您想明确包含一个特定的应用程序,请将该值设置为。将它设置为exclude,如果要排除尽管它被其它应用程序(显式或隐式)包括应用程序。derived意味着如果某个其他(显式或隐式)包含的应用程序使用该应用程序,则会自动包含该应用程序。

默认情况下Module inclusion policy,系统级别用于所有应用程序。derived如果你只想要包含实际使用的模块,请将其设置为。将它设置为app你,除了衍生模块,也希望被包含在应用程序文件中列出的模块。将它设置为ebin你,除了衍生模块,也希望现有作为EBIN目录梁文件包含的模块。将其设置为all如果您希望包含所有模块,即在ebin目录中找到并在应用程序文件中列出的模块的联合。

应用程序设置页面相当不完整。

模块

模块页面上有四类模块。Included包含明确包含的模块。Excluded包含明确排除的模块。Derived包含直接由明确包含的模块或其他派生模块使用的模块。Available包含其余的模块。

选择一个或多个模块,然后单击模块列下面的按钮以更改模块类别。例如,选择一个可用模块并单击它的“滴答”按钮将模块移动到包含的类别。单击包含模块的勾号将模块移回可用类别。滴答声被取消了。

模块名称前面的符号旨在描述模块的状态。有错误和警告符号表明有需要注意的事情。刻度符号意味着模块被包含或派生,并且没有检测到问题。十字符号表示该模块被排除或可用,并且未检测到任何问题。带有错误符号的模块列在每个类别中的第一个,后面跟着警告,最后是正常的(ticks 和 crosses)。

双击模块以启动其模块窗口。

应用依赖关系

页面上有四类应用程序Application dependencies。如果该应用程序被其他应用程序使用,则列在其下Used by。如果应用程序需要在启动之前启动其他应用程序,则这些应用程序将在下面列出Required。这些应用程序applicationsapp文件的一部分中列出。如果应用程序包含其他应用程序,则列在其下Included。这些应用程序included_applicationsapp文件的一部分中列出。如果应用程序使用其他应用程序,则会在下面列出Uses

双击应用程序名称可启动应用程序窗口。

模块依赖

页面上有两类模块Module dependencies。如果该模块被其他模块使用,则列在其下Modules using this。如果模块使用其他模块,则在下面列出Used modules

双击模块名称可启动模块窗口。

2.4模块窗口

模块窗口通过双击模块名称来启动。模块窗口最初由两个页面(标签)组成:

  • 相依性
  • 代码

单击名称标签以显示其页面。

相依性

页面上有两类模块Dependencies。如果该模块被其他模块使用,则列在其下Modules using this。如果模块使用其他模块,则在下面列出Used modules

双击模块名称可启动模块窗口。

代码

Code页面上显示Erlang源代码。可以在模块中向前和向后搜索文本。在Find字段中输入正则表达式,然后按Enter。也可以转到模块中的某一行。该Back按钮可用于返回到之前的位置。

将标记放在函数名称上,然后双击以进入函数的定义。如果函数是在另一个模块中定义的,该模块将被加载并添加到页面列表中。

Erlang 20

Erlang 是一种通用的面向并发的编程语言,可应付大规模开发活动的程序设计语言和运行环境。

主页 https://www.erlang.org/
源码 https://github.com/erlang/otp
版本 20
发布版本 20.1