VScode插件发布

背景

上期在初涉 VS Code 插件开发-CSDN博客中,通过Yeoman工具创建了第一个插件项目,在helloworld的基础上修改,实现预期的功能后,需要将VScode插件发布到插件市场中使用。

官方文档:Publishing Extensions | Visual Studio Code Extension API

插件发布前的准备

1、创建发布账号

进入 https://dev.azure.com/ 按照文档在 Azure DevOps 中创建自己的organization,例如创建新的组织mytest0416

 创建成功如图:

2、获取个人token

在组织主页(例如:https://dev.azure.com/mytest0416/)中,打开用户设置下拉菜单,然后选择个人访问令牌:

点击NEW TOKEN 创建新的token,注意下面标注的填写项

点击create按钮,将会看到新创建的个人访问令牌。将其复制并保存,之后需要用它来创建publisher

插件发布工具安装及介绍

确保安装Node.js。然后运行:

npm install -g @vscode/vsce

可以使用vsce轻松打包和发布插件:

$ cd myExtension $ vsce package# 会在本地生成 myExtension.vsix 插件包$ vsce publish# 发布到插件市场

vsce还可以搜索、检索元数据和取消发布插件。有关所有可用命令的参考vsce,请运行vsce --help。

创建发布者

发布者是可以将插件发布到 Visual Studio Code Marketplace 的身份。

创建发布者:

  1. 转到Visual Studio Marketplace 发布者管理页面

  2. 使用创建个人访问令牌时所用的同一 Microsoft 帐户登录

  3. 单击左侧窗格中的“创建发布者” 

    • ID:发布商在 Marketplace 中的唯一标识符,将在插件 URL 中使用。 ID一旦创建就无法更改。

    • 名称:您的发布商的唯一名称,将与插件一起显示在 Marketplace

 创建成功后,如图:

每个插件都需要publisher在其package.json文件中包含一个标识符。

发布插件

在终端中,运行以下命令,并在出现提示时键入在上一步中创建的个人访问令牌:

vsce login <publisher id>
# 如:vsce login test0416

 登录成功后,就可以发布插件了

vsce publish

返回例如: 

 

插件更新

发布插件时,通过指定要递增的SemVer兼容号或版本(major、minor或patch)来自动递增其版本号。例如,要将插件的版本从 1.0.0 更新到 1.1.0,可以指定:

vsce publish minor
# 或者
vsce publish 1.1.0

这两个命令都会首先修改插件的package.json 版本属性,然后将其与更新后的版本一起发布。

注意:如果您vsce publish在 git 存储库中运行,它还会通过npm-version创建版本提交和标记。默认提交消息将是插件的版本,但您可以使用该标志提供自定义提交消息-m。 (可以从提交消息中引用当前版本%s)。

取消发布插件

您可以通过单击“更多操作”>“取消发布”从Visual Studio Marketplace 发布者管理页面取消发布插件:

通过 Marketplace 管理页面取消发布插件

取消发布后,插件的可用性状态将更改为“未发布”,并且将不再可以从 Marketplace 和 Visual Studio Code 下载:

注意:当您取消发布插件时,Marketplace 将保留插件统计信息。

删除插件

可以通过两种方式删除插件:

自动,vsce与unpublish命令一起使用:

vsce unpublish <publisher id>.<extension name>

从Visual Studio Marketplace 发布者管理页面手动单击“更多操作”>“删除”:

在这两种情况下,系统都会提示输入插件名来确认删除。请注意,删除操作是不可逆的。

注意:当取消发布插件时,Marketplace 将删除所有插件统计信息。您可能想要更新插件而不是取消发布它。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/820989.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C语言】带你完全理解指针(六)指针笔试题

目录 1. 2. 3. 4. 5. 6. 7. 8. 1. int main() {int a[5] { 1, 2, 3, 4, 5 };int* ptr (int*)(&a 1);printf("%d,%d", *(a 1), *(ptr - 1));return 0; } 【答案】 2&#xff0c;5 【解析】 定义了一个指向整数的指针ptr&#xff0c;并将其初始化为&…

动态规划专练( 198.打家劫舍)

198.打家劫舍 你是一个专业的小偷&#xff0c;计划偷窃沿街的房屋。每间房内都藏有一定的现金&#xff0c;影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统&#xff0c;如果两间相邻的房屋在同一晚上被小偷闯入&#xff0c;系统会自动报警。 给定一个代表每个…

设计模式学习笔记 - 设计模式与范式 -总结:1.回顾23中设计模式的原理、背后的思想、应用场景等

1.创建型设计模式 创建型设计模式包括&#xff1a;单例模式、工厂模式、建造者模式、原型模式。它主要解决对象的创建问题&#xff0c;封装复杂的创建过程&#xff0c;解耦对象的创建代码和使用代码。 1.单例模式 单例模式用来创建全局唯一的对象。一个类只允许创建一个对象…

Angular 使用DomSanitizer防范跨站脚本攻击

跨站脚本Cross-site scripting 简称XSS&#xff0c;是代码注入的一种&#xff0c;是一种网站应用程序的安全漏洞攻击。它允许恶意用户将代码注入到网页上&#xff0c;其他用户在使用网页时就会收到影响&#xff0c;这类攻击通常包含了HTML和用户端脚本语言&#xff08;JS&…

微博百度热搜收集

背景 大家都有使用微博、百度吧&#xff0c;而每天的热搜想必大家也用的不少。微博、百度的热搜有7、8种分类&#xff0c;每个单独查看比较耗费时间&#xff0c;效率极低&#xff0c;大概要花费3&#xff0c;4分钟左右。最近闲来无事&#xff0c;冒出个想法&#xff0c;是不是有…

Python编程:高效数据处理与自动化任务实践

一、引言 Python,作为一种解释型、交互式、面向对象的编程语言,凭借其简洁易懂的语法和强大的功能库,已经成为数据科学、机器学习、Web开发等多个领域的首选工具。本文将探讨Python在数据处理和自动化任务方面的应用,通过具体的代码案例展示Python的强大功能。 二、数据处理…

官宣:2024第二十届国际铸造件展12月精彩呈现!

Shanghai International Die-casting Casting Expo 2024第二十届上海国际压铸、铸造展览会 2024第二十届上海国际压铸、铸件产品展 时间&#xff1a;2024年12月18-20日 地点&#xff1a;上海新国际博览中心&#xff08;浦东区龙阳路2345号&#xff09; 报名参展&#xff1…

Spring ApplicationEvent 事件处理--不用引入中间件

一、背景 有一天&#xff0c;小王向小李请教&#xff1a;“我碰到了一个功能需求&#xff0c;用户注册完账号后&#xff0c;我们需要通知他们进行激活。我想实现异步处理&#xff0c;但不知道怎么做才更优雅。”小李听后&#xff0c;不假思索地说&#xff1a;“你可以直接开启…

【Git】初识 Git

文章目录 1. 提出问题2. 如何解决&#xff1f;版本控制器3. 注意事项 1. 提出问题 不知道你工作或学习时&#xff0c;有没有遇到这样的情况&#xff1a;我们在编写各种文档时&#xff0c;为了防止文档丢失、更改失误、失误后能恢复到原来的版本&#xff0c;不得不复制出一个副…

CC工具箱使用指南:【浙江省村规结构调整表(杨欢)】

一、简介 群友定制工具。 这个工具的功能简单易懂&#xff0c;就是根据输入的现状用地和规划用地图层&#xff0c;生成浙江村规的结构调整表。 村规的结构调整表格式&#xff0c;各个省份都不太一样&#xff0c;无法做一个通用的工具&#xff0c;实在很让人头痛。 看了之后表…

多语言vue-i18n (vue2,uniapp)

安装vue-i18n npm install vue-i18n8 --save // npm install vue-i18n–save 9版本需要vue3.0 // 在vue2环境下&#xff0c;默认安装 npm install vue-i18n 的版本是 vue-i18n9.2.2&#xff0c; // 报错信息里提示这个版本要求是vue3&#xff0c;所以我们安装适合vue2版本的vu…

FactoryMethod工厂方法模式详解

目录 模式定义实现方式简单工厂工厂方法主要优点 应用场景源码中的应用 模式定义 定义一个用于创建对象的接口&#xff0c;让子类决定实例化哪一个类。 Factory Method 使得一个类的实例化延迟到子类。 实现方式 简单工厂 以下示例非设计模式&#xff0c;仅为编码的一种规…

linux系统简介与环境搭建

linux系统简介与环境搭建 注&#xff1a;该题册一旦提交不可见不可修改&#xff0c;甚至不知道成绩&#xff0c;请谨慎提交&#xff0c;以下答案均为个人见解&#xff0c;非标准答案&#xff0c;如有意见&#xff0c;请评论&#xff01;&#xff01;&#xff01; 一、单 选 题…

libcurl 简单使用

LibCurl是一个开源的免费的多协议数据传输开源库&#xff0c;该框架具备跨平台性&#xff0c;开源免费&#xff0c;并提供了包括HTTP、FTP、SMTP、POP3等协议的功能&#xff0c;使用libcurl可以方便地进行网络数据传输操作&#xff0c;如发送HTTP请求、下载文件、发送电子邮件等…

数据结构DAY4--哈希表

哈希表 概念&#xff1a;相当于字典&#xff0c;可以根据数据的关键字来寻找相关数据的查找表。 步骤&#xff1a;建立->插入->遍历->查找->销毁 建立 建立数据&#xff0c;形式随意&#xff0c;但一般为结构体&#xff08;储存的数据量大&#xff09;&#xff…

Pytorch深度学习完整GPU图像分类代码

1. CPU与GPU不同 1.输入数据 2.网络模型 3.损失函数 .cuda() 说明&#xff1a;下面代码中GPU版本中取消下划线的即为CPU版本 2.完成的分类代码(GPU) import torch import torchvision from torch.utils.tensorboard import SummaryWriter# from model import * # 准备数据集 …

vue3 依赖-组件tablepage-vue3说明文档,列表页快速开发,使用思路及范例(Ⅳ)其他配置项

github求⭐ vue3 依赖-组件tablepage-vue3说明文档&#xff0c;列表页快速开发&#xff0c;使用思路及范例&#xff08;Ⅰ&#xff09;配置项文档 vue3 依赖-组件tablepage-vue3说明文档&#xff0c;列表页快速开发&#xff0c;使用思路及范例&#xff08;Ⅱ&#xff09;搜索…

OpenHarmony实战开发-如何实现发布图片评论功能。

介绍 本示例将通过发布图片评论场景&#xff0c;介绍如何使用startAbilityForResult接口拉起相机拍照&#xff0c;并获取相机返回的数据。 效果图预览 使用说明 通过startAbilityForResult接口拉起相机&#xff0c;拍照后获取图片地址。 实现思路 1.创建CommentData类&…

进程替换execl

#include<stdio.h> #include<unistd.h> // int execl(const char *path, const char *arg, ...); int main() {printf("start:\n");execl("/usr/bin/ls","ls","-a",NULL);printf("end!\n"); }如果没有exe…

JavaScript 高性能编程 —— 加载和运行

JavaScript 在浏览器中的性能,可认为是开发者所要面对的最重要的可用性问题。此问题因 JavaScript 的阻塞特征而复杂,也就是说,当 JavaScript 运行时其他的事情不能被浏览器处理。 事实上,大多数浏览 器使用单进程处理 UI 更新和 JavaScript 运行等多个任务,而同一时间只能…