# 退出代码

退出代码表示运行命令后 CodeQL CLI 命令的状态。

## 关于退出代码

CodeQL CLI 以退出代码的形式报告它运行的每个命令的状态。
此退出代码为后续命令或依赖于 CodeQL CLI 的其他工具提供信息。

## 0

成功，正常终止。

## 1

命令已成功确定问题的答案为“否”。

此退出代码仅被少数命令使用，例如 [测试运行](/zh/code-security/codeql-cli/codeql-cli-manual/test-run)、[数据集检查](/zh/code-security/codeql-cli/codeql-cli-manual/dataset-check)、[查询格式](/zh/code-security/codeql-cli/codeql-cli-manual/query-format) 和 [求解提取器](/zh/code-security/codeql-cli/codeql-cli-manual/resolve-extractor)。
有关更多详细信息，请参阅这些命令对应的文档。

## 2

出现错误。

CLI 将人类可读的错误消息写入 stderr。
这包括提取程序因内部错误而失败的情况，因为 `codeql` 驱动程序无法区分提取程序行为中的内部错误和面向用户的错误。

## 3

启动器找不到 CodeQL 安装目录。

在这种情况下，启动器根本无法启动 CodeQL CLI的Java代码。 只有当 CodeQL 安装出现严重问题时，才会发生这种情况。

## 32

运行 [数据库创建](/zh/code-security/codeql-cli/codeql-cli-manual/database-create) 或 [数据库完成](/zh/code-security/codeql-cli/codeql-cli-manual/database-finalize) 时，提取程序未找到任何可分析的代码。

## 33

一个或多个查询评估超时。

某些并行计算的查询可能没有超时。会照常生成这些查询的结果。

## 98

已显式取消评估。

## 99

CodeQL CLI的内存已耗尽。

这不一定意味着已使用计算机的所有物理 RAM。
如果不使用 `--ram` 选项显式设置限制，JVM 将在启动时确定默认限制。

## 100

发生严重内部错误。

这应被视为 bug。 CLI 通常会将简短的错误说明写入 stderr。
如果你能复现该问题，最好使用 `--logdir`，并在错误报告中将日志文件发送给 GitHub。

## Other

在运行 `codeql`的 JVM 中出现非常严重的问题时，它可能会返回自己选择的非零退出代码。
只有在 CodeQL 安装出现严重问题，或者运行 CodeQL 进程的主机系统存在内存问题时，才会发生这种情况。 例如，Unix 系统可能会返回 Exit Code 137，以指示内核已终止已启动的进程 CodeQL 。 要解决此问题，一种方法是修改 `–ram=` 步骤的 `codeql database analyze` 标志并重新运行工作流。