vscodelaunch.json配置(vscode的launchjson怎么配置)

# vscode launch.json 配置详解## 简介`launch.json` 文件是 Visual Studio Code 的调试配置,它告诉 VS Code 如何启动和调试你的程序。 它位于 `.vscode` 文件夹中,该文件夹通常位于你的项目根目录下。 不同的编程语言和调试器需要不同的 `launch.json` 配置。 本文档将详细解释 `launch.json` 的结构、常用配置项以及一些示例。## 一、 launch.json 文件结构`launch.json` 文件是一个 JSON 文件,包含一个或多个配置项。每个配置项都是一个对象,描述了一种调试配置。 最顶层是一个包含多个配置的数组。```json {"version": "0.2.0", // 版本号,一般无需修改"configurations": [// 配置项数组,每个对象是一个调试配置{// 配置项 1},{// 配置项 2}] } ```## 二、 常用配置项以下列举一些常用的配置项,并非所有配置项都适用于所有调试器:### 2.1 `type`

类型

: 字符串

描述

: 指定调试器的类型。 这取决于你正在使用的编程语言和调试器。 例如,对于 Node.js,它是 "node";对于 Python,它是 "python";对于 C++,可能是 "cppdbg" 或其他根据你的调试器而定的值。### 2.2 `name`

类型

: 字符串

描述

: 调试配置的名称,在 VS Code 的调试启动配置下拉菜单中显示。 建议使用描述性的名称,例如 "Launch Program"、"Attach to Process" 等。### 2.3 `request`

类型

: 字符串

描述

: 指定调试请求的类型。 通常有两种值:

`"launch"`: 启动程序进行调试。

`"attach"`: 附加到正在运行的进程进行调试。### 2.4 `program`

类型

: 字符串

描述

: (适用于 `request: "launch"`) 指定要调试的程序的路径。 这通常是你的可执行文件或脚本的完整路径。### 2.5 `args`

类型

: 数组 (字符串)

描述

: (适用于 `request: "launch"`) 传递给程序的命令行参数。### 2.6 `cwd`

类型

: 字符串

描述

: 指定程序的工作目录。### 2.7 `stopOnEntry`

类型

: 布尔值

描述

: 是否在程序入口点暂停执行。### 2.8 `port`

类型

: 整数

描述

: (通常用于 `attach` 请求) 指定要附加到的进程的端口号。### 2.9 `preLaunchTask`

类型

: 字符串

描述

: 在开始调试之前执行的任务名称。 这在需要先编译代码或执行其他操作的情况下非常有用。 任务的定义在 `tasks.json` 文件中。## 三、 示例配置### 3.1 Node.js```json {"version": "0.2.0","configurations": [{"type": "node","request": "launch","name": "Launch Program","program": "${workspaceFolder}/index.js", // 使用变量指向工作区文件夹"args": [],"cwd": "${workspaceFolder}","console": "integratedTerminal" // 在集成终端中显示控制台输出}] } ```### 3.2 Python```json {"version": "0.2.0","configurations": [{"name": "Python: Current File","type": "python","request": "launch","program": "${file}", // 调试当前打开的文件"console": "integratedTerminal"}] } ```### 3.3 C++ (使用 gdb) - 一个简化的例子,实际情况可能更复杂```json {"version": "0.2.0","configurations": [{"name": "Debug C++","type": "cppdbg","request": "launch","program": "${workspaceFolder}/build/debug/myprogram", // 可执行文件路径"MIMode": "gdb", // 使用gdb调试器"miDebuggerPath": "/usr/bin/gdb", // gdb的路径,根据你的系统调整"preLaunchTask": "build" // 构建任务}] } ```

注意:

以上只是一些简单的例子。 实际的 `launch.json` 配置可能更加复杂,具体取决于你的项目和使用的调试器。 建议参考 VS Code 的官方文档以及你使用的编程语言和调试器的文档来了解更多配置选项。 在 VS Code 中,可以通过点击调试面板的齿轮图标来自动生成 `launch.json` 文件。## 四、 使用变量在 `launch.json` 中,可以使用变量来简化配置。 例如,`"${workspaceFolder}"` 表示当前工作区文件夹的路径,`"${file}"` 表示当前打开的文件的路径。## 五、 tasks.json 与 launch.json 的关系`tasks.json` 文件定义了 VS Code 中的任务,例如编译代码、运行脚本等。 `launch.json` 中的 `preLaunchTask` 属性可以指定在启动调试之前执行的任务。 例如,在调试 C++ 代码之前,你可能需要先编译代码,这时就需要在 `tasks.json` 中定义一个编译任务,并在 `launch.json` 中引用它。希望这篇文档能够帮助你理解和配置 `launch.json` 文件。 记住查阅你所用编程语言和调试器的具体文档,以获得最准确和最新的配置信息。

vscode launch.json 配置详解

简介`launch.json` 文件是 Visual Studio Code 的调试配置,它告诉 VS Code 如何启动和调试你的程序。 它位于 `.vscode` 文件夹中,该文件夹通常位于你的项目根目录下。 不同的编程语言和调试器需要不同的 `launch.json` 配置。 本文档将详细解释 `launch.json` 的结构、常用配置项以及一些示例。

一、 launch.json 文件结构`launch.json` 文件是一个 JSON 文件,包含一个或多个配置项。每个配置项都是一个对象,描述了一种调试配置。 最顶层是一个包含多个配置的数组。```json {"version": "0.2.0", // 版本号,一般无需修改"configurations": [// 配置项数组,每个对象是一个调试配置{// 配置项 1},{// 配置项 2}] } ```

二、 常用配置项以下列举一些常用的配置项,并非所有配置项都适用于所有调试器:

2.1 `type`* **类型**: 字符串 * **描述**: 指定调试器的类型。 这取决于你正在使用的编程语言和调试器。 例如,对于 Node.js,它是 "node";对于 Python,它是 "python";对于 C++,可能是 "cppdbg" 或其他根据你的调试器而定的值。

2.2 `name`* **类型**: 字符串 * **描述**: 调试配置的名称,在 VS Code 的调试启动配置下拉菜单中显示。 建议使用描述性的名称,例如 "Launch Program"、"Attach to Process" 等。

2.3 `request`* **类型**: 字符串 * **描述**: 指定调试请求的类型。 通常有两种值:* `"launch"`: 启动程序进行调试。* `"attach"`: 附加到正在运行的进程进行调试。

2.4 `program`* **类型**: 字符串 * **描述**: (适用于 `request: "launch"`) 指定要调试的程序的路径。 这通常是你的可执行文件或脚本的完整路径。

2.5 `args`* **类型**: 数组 (字符串) * **描述**: (适用于 `request: "launch"`) 传递给程序的命令行参数。

2.6 `cwd`* **类型**: 字符串 * **描述**: 指定程序的工作目录。

2.7 `stopOnEntry`* **类型**: 布尔值 * **描述**: 是否在程序入口点暂停执行。

2.8 `port`* **类型**: 整数 * **描述**: (通常用于 `attach` 请求) 指定要附加到的进程的端口号。

2.9 `preLaunchTask`* **类型**: 字符串 * **描述**: 在开始调试之前执行的任务名称。 这在需要先编译代码或执行其他操作的情况下非常有用。 任务的定义在 `tasks.json` 文件中。

三、 示例配置

3.1 Node.js```json {"version": "0.2.0","configurations": [{"type": "node","request": "launch","name": "Launch Program","program": "${workspaceFolder}/index.js", // 使用变量指向工作区文件夹"args": [],"cwd": "${workspaceFolder}","console": "integratedTerminal" // 在集成终端中显示控制台输出}] } ```

3.2 Python```json {"version": "0.2.0","configurations": [{"name": "Python: Current File","type": "python","request": "launch","program": "${file}", // 调试当前打开的文件"console": "integratedTerminal"}] } ```

3.3 C++ (使用 gdb) - 一个简化的例子,实际情况可能更复杂```json {"version": "0.2.0","configurations": [{"name": "Debug C++","type": "cppdbg","request": "launch","program": "${workspaceFolder}/build/debug/myprogram", // 可执行文件路径"MIMode": "gdb", // 使用gdb调试器"miDebuggerPath": "/usr/bin/gdb", // gdb的路径,根据你的系统调整"preLaunchTask": "build" // 构建任务}] } ```**注意:** 以上只是一些简单的例子。 实际的 `launch.json` 配置可能更加复杂,具体取决于你的项目和使用的调试器。 建议参考 VS Code 的官方文档以及你使用的编程语言和调试器的文档来了解更多配置选项。 在 VS Code 中,可以通过点击调试面板的齿轮图标来自动生成 `launch.json` 文件。

四、 使用变量在 `launch.json` 中,可以使用变量来简化配置。 例如,`"${workspaceFolder}"` 表示当前工作区文件夹的路径,`"${file}"` 表示当前打开的文件的路径。

五、 tasks.json 与 launch.json 的关系`tasks.json` 文件定义了 VS Code 中的任务,例如编译代码、运行脚本等。 `launch.json` 中的 `preLaunchTask` 属性可以指定在启动调试之前执行的任务。 例如,在调试 C++ 代码之前,你可能需要先编译代码,这时就需要在 `tasks.json` 中定义一个编译任务,并在 `launch.json` 中引用它。希望这篇文档能够帮助你理解和配置 `launch.json` 文件。 记住查阅你所用编程语言和调试器的具体文档,以获得最准确和最新的配置信息。

标签列表