# 调试与排错

这一页是“开发插件时最常用的排错清单”。

# 快速调试流程(推荐)

  1. 把插件放入插件目录(见 插件使用指南 的“手动安装”)。
  2. 打开 启动台 → 插件管理
  3. 在插件列表中对你的插件执行:
    • 重载:修改代码后最常用
    • 禁用/启用:验证停用清理是否正确

停用插件时,插件系统会调用 deactivate(),并自动 dispose()context.subscriptions 里收集的 disposable。

# 观察日志

  • activate(context) 中优先用 context.log / warn / error 输出日志(自带插件前缀,方便定位)。
  • 如果插件加载失败,插件管理器通常会显示 ERROR 状态;也可以结合开发者工具/控制台查看错误堆栈。

# 常见坑

  • ID 冲突commands / cardId / pageId / widgetId 建议统一用 ${pluginId}.xxx 命名。
  • 忘记清理资源:定时器、事件监听、窗口引用等要在 deactivate() 或 disposable 的 dispose() 中清理。
  • 误用 API 名称:主进程侧是 api.window(不是 api.windows)。建议以文档/API 实现为准。

# 插件数据目录位置

插件系统会为每个插件创建独立数据目录:

  • context.storagePath
  • context.globalState 保存到 global-state.json
  • context.workspaceState 保存到 workspace-state.json

这些文件都位于用户数据目录下的插件存储子目录中。