发布插件

简介: 发布插件

发布准备

这个插件的发布相比于 npm 发包而言是非常麻烦的( PS :这是我见过的最麻烦的发包流程了)


首先我们要准备一个 Microsoft 账号,这个基本每个人都有,没有的话可以通过邮箱注册一个,很容易的。


但是可不是这一个账号就可以的,因为 Visual Studio Code 的应用市场基于微软自己的 Azure DevOps ,插件的身份验证、托管和管理都是在这里。


所以要发包,那就必须要注册微软的 Azure DevOps ,之后创建组织,再搞 Personal Access Token


Step1. 登录 Microsoft 账号

首先访问 https://login.live.com/ 登录你的 Microsoft 账号即可。


Step2. 配置 Azure DevOps

另起一个网页,访问 https://aka.ms/SignupAzureDevOps


提示

可能会比较慢。


访问成功的话,你应该看到大致如下的内容:

我这里已经建立好了组织项目,作为新用户自己建立一个项目,之后再建立组织,如果插件没有敏感信息,建议项目选择公开

AzureDevOps主页.png


Step3. 创建 Token

如下图所示,进入 Personal Access Token 配置页面

AzureDevOps选择个人Token.png


之后创建一个 Token ,如下图

AzureDevOps创建Token.png


温馨提示

建议将 Organization 选择 All accessible organizationScopes 选择 Full 。官方文档上建议选择 Custom defined ,只开放了 MarketplaceManage 权限,这样更安全嘛。实际下来发现如果只给这个权限,在发布的时候会报错,反正Azure的DevOps也不用,就给全部的权限好了。


点击创建之后, 记得要保存Token啊!


Step4. 创建发布者—— publisher

打开网址:https://marketplace.visualstudio.com/manage/publishers


创建一个发布者publisher ,这个名称要唯一。

vscode商店创建发布者.png


提示

我这里已经有一个插件了,正常刚创建的发布者是没有插件的。


接下来将项目中的 package.json 文件加入发布者信息

{
    "publisher": "IricBing",
}点击复制复制失败已复制


Step5. 安装 vsce 工具

vsce 就是 VSCode Extension 的缩写,专门用来打包和发布 vscode 扩展的。

$ npm i vsce -g点击复制复制失败已复制


Step6. 源码打包

$ yarn compile  # 编译
$ vsce package  # vsce打包点击复制复制失败已复制

之后能够在根目录下看到 packagename-version.vsix 格式的 vscode 扩展包。


Step7. 发布

这个发布还要分情况, 第一次发布 的时候,将打包好的扩展包通过拖拽上传的方式来上传的应用商店,点击 New extension 按钮,之后选择 Visual Studio Code

vscode应用商店上传扩展包.png


第二次发布的时候就可以通过命令直接发布了。

$ vsce publish点击复制复制失败已复制

这里要输入之前创建的 Token


写在后面

为什么发包要创建 AzureDevOps 项目,通过这个来拿到 Token ,这个操作令我很费解,而且完全没有用到这个产品嘛,难道仅仅是为了打个广告,推广一下?

目录
相关文章
|
人工智能 分布式计算 大数据
FFA 2023 「流式湖仓」专场:从技术原理到应用实践打造流式湖仓新架构
今年 Flink Forward Asia(以下简称 FFA ) 重新回归线下,将于 12 月 8 - 9 日在北京望京凯悦酒店举办。Flink Forward Asia 2023 大会议程已正式上线!
1330 0
FFA 2023 「流式湖仓」专场:从技术原理到应用实践打造流式湖仓新架构
|
API
【Qt 学习笔记】QWidget的toolTip属性 | focusPolicy属性
【Qt 学习笔记】QWidget的toolTip属性 | focusPolicy属性
968 5
|
9月前
|
数据可视化 数据挖掘 Java
报表工具怎么选?8款主流报表工具大测评!
报表工具怎么选?8款主流报表工具大测评!
|
12月前
|
数据采集 测试技术
SPAR:融合自对弈与树搜索的高性能指令优化框架
SPAR框架通过自对弈和树搜索机制,生成高质量偏好对,显著提升了大语言模型的指令遵循能力。实验表明,SPAR在指令遵循基准测试中表现优异,尤其在模型规模扩展和判断能力方面展现出显著优势。
264 5
|
敏捷开发 存储 数据可视化
探索:6 款办公软件如何变革设计团队协作新潮流?
本文深入介绍了6款适合全J人软件设计开发团队的可视化协作软件,包括国内的板栗看板和5款国外的小众软件:Figma Jam、InSightful、Backlog、Taiga和Wekan。这些软件各自拥有独特优势,如板栗看板的任务可视化、Figma Jam的创意空间构建、InSightful的工作时长分析等,旨在提升团队协作效率,助力项目成功推进。
239 5
|
安全 Java 开发者
Spring容器中的bean是线程安全的吗?
Spring容器中的bean默认为单例模式,多线程环境下若操作共享成员变量,易引发线程安全问题。Spring未对单例bean做线程安全处理,需开发者自行解决。通常,Spring bean(如Controller、Service、Dao)无状态变化,故多为线程安全。若涉及线程安全问题,可通过编码或设置bean作用域为prototype解决。
293 1
|
SQL 安全 前端开发
Go语言Gin框架安全加固:全面解析SQL注入、XSS与CSRF的解决方案
Go语言Gin框架安全加固:全面解析SQL注入、XSS与CSRF的解决方案
|
存储 安全 Linux
|
计算机视觉
在yolov5项目中如何使用自带摄像机不用网络摄像机进行实时检测?
这篇文章讨论了在yolov5项目中,如何避免使用网络摄像机而改用自带的本地摄像机进行实时目标检测,并提供了解决摄像头打开错误的具体步骤和代码示例。
在yolov5项目中如何使用自带摄像机不用网络摄像机进行实时检测?
|
缓存 API 调度
Android OkHttp+Retrofit+Rxjava+Hilt实现网络请求框架
🔥 介绍 本文通过OkHttp+Retrofit+Rxjava+Hilt实现一个网络请求框。
905 0
Android OkHttp+Retrofit+Rxjava+Hilt实现网络请求框架