使用 IDE 调试宏
可以使用特殊的命令行选项和集成开发环境 (IDE) 程序调试 Simcenter STAR-CCM+ 宏。
有多个 IDE 可免费下载,包括:
- BlueJ:www.bluej.org
- Eclipse:www.eclipse.org
- JDeveloper:www.oracle.com/technetwork/developer-tools/jdev
- NetBeans:www.netbeans.org
以下说明适用于使用 NetBeans 调试宏。需要使用 12.6 或更高版本。类似的方法可用于其他 IDE。
调试宏的过程包括以下步骤:
- 在 IDE 中加载宏
- 在调试模式下运行 Simcenter STAR-CCM+
- 单步调试宏
在 IDE 中加载宏
NetBeans 要求宏位于目录结构 <ProjectFolder>/<SourceFolder>/<Macro>.java 中,因此在开始之前必须将宏和任何输入文件组织到适当的位置。
- 在 NetBeans 中,选择 。
-
在 New Project(新建项目) 向导中,选择 Java Project with Existing Sources(基于现有源的 Java 项目),然后单击下一步。
-
在 Name and Location(名称和位置) 面板中,在“项目名称”中指定项目的名称,在“Project Folder(项目文件夹)”中提供项目目录的位置,然后单击下一步。
-
在 Existing Sources(现有源) 面板中,单击 Source Package Folders(源包文件夹) 的 Add Directory(添加目录) 按钮,添加先前创建的源目录,然后单击下一步。
-
在包括面板中,确保高亮显示所需的宏。
- 单击完成以创建项目。
下一步是将 Simcenter STAR-CCM+ JAR 文件添加到项目,使 IDE 可以解析 Simcenter STAR-CCM+ Java 类。添加保存在 ext/ 目录(在 Simcenter STAR-CCM+ 安装期间创建)中的 JAR 文件。
-
在 NetBeans 的 Projects(项目) 面板中,右键单击库,然后选择 Add JAR/Folder(添加 JAR/文件夹)。
-
在 Simcenter STAR-CCM+ 安装目录中,选择 ext/ 目录中的每个 JAR 文件。
在 Linux 和 Windows 上,此目录位于以下位置中:
[INSTALLDIR]/star/lib/java/platform/modules/ext/
错误符号将从宏中消失。
现在即可在调试模式下启动 Simcenter STAR-CCM+。
在调试模式下运行 Simcenter STAR-CCM+
Simcenter STAR-CCM+ 可直接将消息传递到运行客户端的 Java 虚拟机。可以使用此功能通过指定端口将 NetBeans 附加到 Simcenter STAR-CCM+ 的实例。在以下示例中使用端口号 8765,但可使用任何未使用的端口号。
-
执行以下某项操作:
- 在 Windows 上的命令提示符中,在一行中输入以下命令:
<InstallationDirectory>\star\bin\starccm+ -jvmargs "-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8765"
- 在 Linux 上的终端窗口中,在一行中输入以下命令:
<InstallationDirectory>/star/bin/starccm+ -jvmargs '-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8765'
此时将打开 Simcenter STAR-CCM+。
- 在 Windows 上的命令提示符中,在一行中输入以下命令:
现在可以通过该端口将 IDE 附加到 Simcenter STAR-CCM+:
-
在 NetBeans 中,选择主机设为
localhost
,从上面的命令行指定端口号,然后单击确定。 ,将
现在即可在调试模式下运行宏。
宏将执行到指定的断点。从此点开始,可以使用 IDE 步进工具处理每个命令。
单步调试宏
通过将 Simcenter STAR-CCM+ 连接到 IDE,可以将宏执行到任何行,然后单步调试各个命令加以了解。将 IDE 附加到 Simcenter STAR-CCM+ 之后,可以先在宏中创建一个或多个断点,然后再运行。
要单步调试宏,执行以下操作:
-
在 NetBeans 中,通过单击行号将断点放置在宏的开头。
- 在 Simcenter STAR-CCM+ 中,根据需要加载或创建案例。
- 在 Simcenter STAR-CCM+ 中,运行宏。