VS Code开发插件使用 pnpm 打包异常的解决姿势

前言

刚刚准备发一个插件,发现用 pnpm 打出一个本地插件包直接扑街了。

这里只聚焦错误问题的解决,不是发插件的教程。。

聊点背景信息,vscode 的插件命令行的是 vsce 这个模块提供的 cli 能力去做的

环境

  • pnpm : 8.x

错误截图

  • 本地打包的命令: vsce package <version> -m "message"
  • vsce package --help 可以看到目前只支持 yarn 这个第三方,要不就是默认的 npm

官方仓库的相关 issue 讨论:github.com/microsoft/v...

修正姿势

在 package.json 的 scripts 字段写成命令去执行,就可以绕过默认采用 npm 执行导致依赖查询异常

json 复制代码
  "scripts": {
    "vscode:prepublish": "pnpm run compile",
    "compile": "tsc -p ./",
    "watch": "tsc -watch -p ./",
    "pretest": "pnpm run compile && pnpm run lint",
    "lint": "eslint src --ext ts",
    "test": "vscode-test",
    "package": "pnpm vsce package --no-dependencies",
    "publish": "pnpm vsce publish --no-dependencies"
  },

这个法子也是 issue 里面好心人给的法子: github.com/microsoft/v...

修正效果图

这样就可以打出本地的扩展,可以先自己安装试试有没有问题,然后再 publish 到商店

温馨提示

npm package : vsce

插件作品

git-branch-warn

这个插件主要用来提示当前所在的分支是否为敏感分支,提供了一些配置,具体可以看 README。

因为过往的经历告诉我,真的有不少人会莫名其妙的把部分增量改动在敏感分支提交,导致代码需要各种回退。。

有个警示语,应该有那么一些作用!!!(≧ω≦)

结语

有不对之处请留言,谢谢阅读

相关推荐
不浪brown21 小时前
服务器繁忙?在 VSCode 中运行本地DeepSeek-R1保姆级教程!仅需10分钟!亲测有效!(建议收藏)
人工智能·visual studio code·deepseek
晚秋大魔王2 天前
C# 添加图标
c#·visual studio code
长安第一美人5 天前
Qt中2个.app源文件之间函数与变量的互相调用
开发语言·c++·嵌入式硬件·qt·visual studio code
一梦南柯9 天前
开发新体验:基于Ollama+deepseek打造私有化代码助手
人工智能·visual studio code·deepseek
敲敲敲敲暴你脑袋9 天前
vue3中ref响应式变量为什么script中要用.value,而template模板中不需?
javascript·vue.js·visual studio code
红虾程序员12 天前
CSS盒子模型详解
前端·pycharm·intellij-idea·css3·html5·visual studio code
天机️灵韵13 天前
Continue 与 CodeGPT 插件 的对比分析
ide·visualstudio·intellij-idea·visual studio code
Lorcian17 天前
web前端12--表单和表格
前端·css·笔记·html5·visual studio code
Lorcian23 天前
web前端11--伪类与过渡
前端·css·笔记·html5·visual studio code
惜.己24 天前
鸿蒙仓颉环境配置(仓颉SDK下载,仓颉VsCode开发环境配置,仓颉DevEco开发环境配置)
vscode·华为·harmonyos·visual studio code·仓颉