vscode调试参数

2,171 阅读2分钟

VSCode launch.json常用变量

  • ${workspaceRoot}:VS Code当前打开的文件夹
  • ${file} :当前打开的文件
  • ${relativeFile}:相对于workspaceRoot的相对路径
  • ${fileBasenameNoExtension}:当前文件的文件名,不带后缀,也即launch
  • ${fileBasename}: 当前打开文件的文件名
  • ${fileDirname}: 所在的文件夹,是绝对路径
  • ${fileDirname}:文件所在的文件夹路径
  • ${lineNumber}:当前文件光标所在的行号
  • ${fileExtname}:当前打开文件的拓展名,如.json
  • ${cwd}: 启动时任务运行程序的当前工作目录
  • ${workspaceFolder}:表示当前workspace文件夹路径
  • ${workspaceRootFolderName}:表示workspace的文件夹名
  • ${env:PATH}:系统中的环境变量

VSCode调试配置项说明

request:请求配置类型,可以为launch(启动)或attach(附加)

下面是launch 和 attach 类型共有的属性:

  • protocol:设置调试协议

  • auto: 尝试自动检测目标运行时使用的协议

  • inspector 新的V8调试器协议,解决遗留版本的多数问题,node versions >= 6.3 and Electron versions >= 1.7.4

  • legacy: 原始的v8调试器协议,node versions < v8.0 and Electron versions < 1.7.4.

  • port:调试使用的端口

  • address :TCP/IP地址,用于远程调试

  • localRoot: 远程调试时映射的本地地址

  • remoteRoot: 远程调试时的远程目录地址

  • sourceMaps: 默认为true

  • outFiles :当map文件不在js文件同目录时用于指定 sourceMaps的位置

  • restart :自动重启调试

  • timeout: 配置自动附加的超时时间

  • stopOnEntry: 自动断点到第一行代码处

  • smartStep: 自动跳过未映射到源代码的代码

  • skipFiles :[]String,指定跳过单步调试的代码

  • trace : 启用诊断输出

以下是特定于类型 launch(启动)的配置属性:

  • program: 指定调试入口文件地址
  • args : []String 传递给程序的参数,可在process.argv拿到
  • cwd :指定程序启动调试的目录 ,当vscode启动目录不是项目根目录,并且调试npm script时非常有用
  • runtimeExecutable: 设置运行时可执行文件路径,默认是node
    可以是其他的执行程序,如npm、nodemon
  • runtimeArgs: 传递给运行时可执行文件的参数,例如:
  • runtimeVersion: 设置运行时可执行程序的版本,如果使用nvm,可以切换node.js版本
  • env: 添加额外的环境变量
  • envFile: 文件加载环境变量
  • console: 配置终端可以是外部终端或者内部集成终端,默认值internalConsole