本页内容

使用 Axivion 进行本地分析

您可以对仪表盘中已连接的项目进行本地分析。在问题列表中,选择相应的仪表盘和项目。您需要在本地安装 Axivion Suite 并拥有有效的许可证。

要在 Axivion 视图中为当前活动项目设置本地构建:

“本地构建”对话框

  1. 在问题表中选择“本地构建 ”。
  2. 在“Axivion Suite Installation Directory ”中选择 Axivion Suite 的基目录。
  3. 输入命令,或选择包含 Axivion 配置的脚本或相应的 JSON 文件。
  4. 从“Build Type ”中选择构建类型。您可以选择“干净构建”或“增量构建”。
  5. 选择“Start Local Build ”以使用给定的参数执行构建。

在“Local Analyses Progress ”中查看正在运行和已完成的本地构建。

本地分析进展

右键单击某个本地构建,从上下文菜单中选择“取消”以终止正在运行的构建。要查看本地构建的输出,请双击或从上下文菜单中选择“Show Build Output ”。这将打开“Local Analyses Output ”视图,其中显示正在运行或已完成的本地分析的输出结果。 选择“Remove All Finished ”可从本地构建进度中移除已完成的本地构建。此操作还会从“Local Analyses Output ”视图中移除相应的输出。

注意:如果 存在之前的运行记录,启动本地分析时将复用其进度条目和输出视图。

本地仪表盘

如果当前选定的项目存在本地构建,您可以通过切换到本地仪表板视图来查看其结果。

请选择“本地仪表盘 ”以执行此操作。这将启动本地仪表盘,并切换问题列表以显示最新结果。

再次选择“Local Dashboard ”即可切换回全局仪表板。

关于使用全局仪表盘的信息同样适用于本地仪表盘(问题类型选择、过滤),但您可选择的版本有限。

在“Version ”中,您可以在全局仪表板的参考版本和本地仪表板结果之间切换。根据本地构建结果,您可以将问题表限制为本地问题或已更改的问题。

单个文件分析

要检查您的更改是否修复了样式问题或引发了新问题,请分析单个文件。

要开始单文件分析,请转至Analyze >Single File Analysis ,或使用文件编辑器右键菜单中的相应选项。

“单文件分析”对话框

在“BAUHAUS_CONFIG Directory ”中,指定包含该项目 Axivion 配置的目录。在“Analysis Command ”中,指定用于执行构建和分析的命令。

注意:分析命令通常是 调用所用 Axivion 套件提供的 `build_compile_commands `,但也可能是由命令组成的脚本文件,用于通过 `cafeCC ` 构建相应文件并对其进行分析。build_compile_commands 可以利用生成的 `compile_commands.json ` 文件,该文件包含该项目的构建说明。 有关更多信息,请参阅《使用编译数据库》。例如,可将更复杂的命令放入脚本文件中,以设置特殊环境。

注意: 有关命令及创建脚本文件的更多信息,请 参阅 Axivion 官方文档中的IDE IntegrationLocal Analyses

您可以在Local Analyses Progress 中查看正在运行的单文件分析的进度。该分析将带有前缀SFA:

当单文件分析完成后,已打开的文件中可能会添加额外的彩色行标记。这些彩色行标记源自单文件分析,而其他标记则来自全局仪表盘。如果分析失败,您可以检查 Axivion 日志或构建日志,这与通常的本地构建类似。

另请参阅: 连接到 Axivion 仪表板服务器查看 Axivion 静态代码分析结果启用和禁用插件操作指南:分析分析器以及 代码分析

Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.