下面有一节描述了构建描述符与 EGL 首选项之间进行的交互。
除非除去断点,否则会将断点从一个调试会话记录到下一个调试会话。
不能在空行或注释行上设置断点。
EGL 调试器将在工作台中的每个项目中搜索接收程序。
如果代码前进到程序中,则调试器在该程序中的第一个语句处停止。
在 show 语句或具有 transfer to a transaction 格式的 transfer 语句之后,EGL 调试器切换至新程序的构建描述符或者(如果未使用任何此类构建描述符的话)提示用户输入新的构建描述符。新程序可以具有与先前运行的程序不同的属性集。
EGL 调试器将在工作台中的每个项目中搜索接收程序。
如果代码前进到程序中,则调试器在该程序中的第一个语句处停止。
在 show 语句或具有 transfer to a transaction 格式的 transfer 语句之后,EGL 调试器切换至新程序的构建描述符或者(如果未使用任何此类构建描述符的话)提示用户输入新的构建描述符。新程序可以具有与先前运行的程序不同的属性集。
EGL 调试器将在工作台中的每个项目中搜索接收程序。
如果在验证器函数中发出单步返回命令,则会导致异常。在该情况下,该行为等同于单步跳入命令的行为,后者主要表示 EGL 调试器运行下一个语句并暂停。
例如,可以在这些语句处添加断点,但单步跳入命令仅仅是前进到下一个语句,而没有其它作用。
最后,如果对函数中运行的最后一个语句发出单步跳入或单步跳过命令(并且,如果该语句不是 return、exit program 或 exit stack),则处理在函数本身中暂停,以便您可以查看该函数的局部变量。在这种情况下,要使调试会话继续,请发出另一个命令。
如果您正在调试将要在 Java 环境中的文本或批处理应用程序中使用的程序,并且该程序发出一个 transfer 语句,该语句将控制权切换至也将要在 Java 环境中的另一个运行单元中使用的程序,则 EGL 调试器使用对接收程序指定的构建描述符。对构建描述符的选择基于前面描述的规则。
用于调试代码的构建描述符或资源关联部件可能与用于生成代码的构建描述符或资源关联部件不同。
如果调试器运行 EGL 源代码,则可以通过从调用程序中发出单步跳入命令来运行该程序中的语句。但是,如果调试器调用生成的代码,则调试器运行整个程序;单步跳入命令的工作方式与单步跳过命令相似。
sysVar.systemType 包含系统类型的值。并且,如果请求了与 VisualAge Generator 的开发时兼容性,则 VGLib.getVAGSysType 提供了另一个值。
系统函数 VGLib.getVAGSysType 返回 sysLib.systemType 值的 VisualAge Generator 等效值;有关详细信息,请参阅 VGLib.getVAGSysType 中的表。
EGL 调试器使用一个端口来建立与 Eclipse 工作台的通信。缺省端口号是 8345。如果另一个应用程序正在使用该端口,或者如果该端口被防火墙阻塞,则设置另一个值,如设置 EGL 调试器首选项中所述。
if (systemType not debug) sysLib.commit(); end
-Dcom.ibm.debug.egl.port=portNumber