VSCode 中的 launch.json 配置使用

VSCode 中的 launch.json 配置使用

VSCode 中,launch.json 文件用于配置调试设置,特别是用来定义如何启动和调试你的应用。它允许你配置不同的调试模式、运行参数和调试选项。

基本结构

launch.json 文件位于 .vscode 文件夹内,可以通过以下方式生成:

  1. 在 VS Code 中打开项目。
  2. Ctrl(Command) + Shift + D(或点击调试图标)。
  3. 点击 创建一个 launch.json 文件,然后选择你要调试的环境(例如 Dart/Flutter)。

常见配置项

1. 基本的 launch.json 配置

在 Flutter 项目中,launch.json 的基本结构如下:

json 复制代码
{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Flutter: Launch",
      "request": "launch",
      "type": "dart",
      "program": "lib/main.dart",  // 指定入口文件
      "args": [],  // 可选,传递给程序的参数
      "flutterMode": "debug",  // 运行模式,可以是 "debug", "release", "profile"
      "noDebug": false,  // 是否不启用调试器
      "env": {
        "APP_ENV": "dev"  // 设置环境变量
      }
    }
  ]
}

2. 常见配置项说明

  • name: 配置名称,显示在 VS Code 中调试配置选择器里。
  • request: 调试请求类型,可以是 launch(启动)或 attach(附加到已运行的进程)。
  • type: 调试类型,Flutter 项目通常为 dart。
  • program: 入口文件,通常为 lib/main.dart。
  • args: 启动应用时传递给程序的命令行参数,类似于运行命令中的 --dart-define 等。
  • flutterMode: 控制 Flutter 应用的运行模式:
    • "debug": 调试模式,默认附加调试器。
    • "release": 发布模式,不附加调试器。
    • "profile": 性能模式,适用于性能测试,不附加调试器。
  • noDebug: 如果设置为 true,表示启动时不附加调试器,适用于 "Run Without Debugging" 场景。
  • env: 环境变量,可以通过该选项在调试时传递给应用的环境变量(如 APP_ENV=dev)。

如何切换运行模式

  • 调试模式 (debug):适用于开发阶段,支持热重载和断点调试。
  • 运行时通过 VS Code 启动时自动选择。
  • 发布模式 (release):不附加调试器,适合准备发布的版本。
  • 性能模式 (profile):用于性能分析,不附加调试器,调试信息被禁用,但支持性能工具。

环境变量配置

你可以通过 env 配置传递环境变量:

json 复制代码
"env": {
  "APP_ENV": "dev"
}

在 main.dart 中,你可以通过 String.fromEnvironment 来访问这个变量:

dart 复制代码
void main() {
  const appEnv = String.fromEnvironment('APP_ENV', defaultValue: 'pro');
  runApp(MyApp(appEnv: appEnv));
}

完整示例

json 复制代码
{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Flutter: Launch",
      "request": "launch",
      "type": "dart",
      "program": "lib/main.dart",
      "flutterMode": "debug",  // 可以选择 "debug", "release", "profile"
      "noDebug": false,  // 启用调试器
      "env": {
        "APP_ENV": "dev"
      }
    },
    {
      "name": "Flutter: Run Without Debugging",
      "request": "launch",
      "type": "dart",
      "program": "lib/main.dart",
      "flutterMode": "release",
      "noDebug": true,  // 不启用调试器
      "args": [
        "--dart-define", "APP_ENV=dev"
      ]
    }
  ]
}

总结

  • launch.json 用于配置调试设置,在 VS Code 中选择如何启动和调试 Flutter 应用。
  • 你可以通过 flutterMode 设置不同的模式(调试、发布、性能)。
  • noDebug 让你选择是否附加调试器来运行应用,适合用于 "Run Without Debugging" 场景。
  • 你可以通过 env 设置环境变量,在应用中访问不同的配置。

这些设置让你能够灵活配置调试和非调试模式,帮助更好地进行开发和性能调优。

相关推荐
雾沉川18 分钟前
Rust IDE 选型:除 VS Code 之外,RustRover 非商业场景可免费使用
ide·vscode·rust
++==13 小时前
JSON和Python的 四种核心容器
python·json
精英的英17 小时前
记一次 Qt5 Language Server 开发
开发语言·vscode·qt
2501_915918411 天前
iOS 真机调试工具推荐,安装运行、性能分析有哪些工具
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
笨鸟先飞,勤能补拙2 天前
AI与深度学习:从原理到应用
人工智能·windows·vscode·深度学习·机器学习·网络安全·github
lf13210272 天前
用 JSON Schema 管装修节点记录:从照片台账到可校验工程数据
网络·数据库·人工智能·经验分享·物联网·json·智能家居
Albert Edison2 天前
PyCharm 字体大小设置
ide·python·pycharm
格数致用2 天前
银河麒麟 V10 SP1 桌面操作系统 + VSCode + Claude Code 接入 DeepSeek-V4 全流程教程(2026年最新)
vscode·claudecode·银河麒麟 v10
我一定会有钱2 天前
打造完美工作流:Git 配置”一次推送,三端同步”(Gitee/GitCode/GitHub)
开发语言·windows·vscode·搜索引擎·gitlab·github·visual studio code
宿6742 天前
vscode文件夹
前端·vue.js·vscode