VSCode插件開發(fā)全攻略之打包、發(fā)布、升級的詳細教程
一、發(fā)布方式
插件開發(fā)完了,如何發(fā)布出去分享給他人呢?主要有3種方法:
- 方法一:直接把文件夾發(fā)給別人,讓別人找到vscode的插件存放目錄并放進去,然后重啟vscode,一般不推薦;
- 方法二:打包成vsix插件,然后發(fā)送給別人安裝,如果你的插件涉及機密不方便發(fā)布到應用市場,可以嘗試采用這種方式;
- 方法三:注冊開發(fā)者賬號,發(fā)布到官網(wǎng)應用市場,這個發(fā)布和npm一樣是不需要審核的。
二、本地打包
無論是本地打包還是發(fā)布到應用市場都需要借助vsce
這個工具。
安裝:
npm i vsce -g
打包成vsix
文件:
vsce package
打包的時候如果沒有設置repository
會有提示,所以最好設置一下。
生成好的vsix文件不能直接拖入安裝,只能從擴展的右上角選擇Install from VSIX
安裝:
三、發(fā)布應用市場
Visual Studio Code的應用市場基于微軟自己的Azure DevOps
,插件的身份驗證、托管和管理都是在這里。
要發(fā)布到應用市場首先得有應用市場的publisher
賬號;而要有發(fā)布賬號首先得有Azure DevOps
組織;而創(chuàng)建組織之前,首先得創(chuàng)建Azure
賬號;創(chuàng)建Azure
賬號首先得有Microsoft
賬號;
是不是有點暈,梳理一下:
一個Microsoft賬號可以創(chuàng)建多個Azure
組織;一個組織可以創(chuàng)建多個publisher
賬號;同時一個組織可以創(chuàng)建多個PAT
(Personal Access Token
,個人訪問令牌);
注冊賬號
首先訪問 https://login.live.com/ 登錄你的Microsoft
賬號,沒有的先注冊一個:
然后訪問: https://aka.ms/SignupAzureDevOps ,如果你從來沒有使用過Azure,那么會看到如下提示:
點擊繼續(xù),默認會創(chuàng)建一個以郵箱前綴為名的組織。
創(chuàng)建令牌
默認進入組織的主頁后,點擊右上角的Security
:
點擊創(chuàng)建新的個人訪問令牌,這里特別要注意Organization
要選擇all accessible organizations
,Scopes
要選擇Full access
,否則后面發(fā)布會失敗。
創(chuàng)建令牌成功后你需要本地記下來,因為網(wǎng)站是不會幫你保存的。
創(chuàng)建發(fā)布賬號
獲得個人訪問令牌后,使用vsce
以下命令創(chuàng)建新的發(fā)布者:
vsce create-publisher your-publisher-name
your-publisher-name
必須是字母數(shù)字下劃線,這是全網(wǎng)唯一的賬號,然后會依次要求輸入昵稱、郵箱、令牌:
創(chuàng)建成功后會默認登錄這個賬號,接下來你可以直接發(fā)布了,當然,如果你是在其它地方創(chuàng)建的,可以試用vsce login your-publisher-name
來登錄。
除了用命令之外,你還可以使用網(wǎng)頁版創(chuàng)建發(fā)布賬號:https://marketplace.visualstudio.com/manage
發(fā)布
發(fā)布很簡單:
vsce publish
發(fā)布成功后大概需要過幾分鐘才能在應用市場搜到。過幾分鐘就可以訪問網(wǎng)頁版的插件主頁:https://marketplace.visualstudio.com/items?itemName=sxei.vscode-plugin-demo
vscode里面也能搜到了:
發(fā)布注意事項README.md
文件默認會顯示在插件主頁;README.md
中的資源必須全部是HTTPS
的,如果是HTTP
會發(fā)布失?。?code>CHANGELOG.md會顯示在變更選項卡;如果代碼是放在git倉庫并且設置了repository字段,發(fā)布前必須先提交git,否則會提示Git working directory not clean
;
另外,如前面所說,如果Organization
沒有選擇all accessible organizations
,或者Scopes
沒有選擇Full access
,發(fā)布的時候可能會報如下錯誤:
Error: Failed Request: Unauthorized(401) - https://marketplace.visualstudio.com/_apis/gallery
Be sure to use a Personal Access Token which has access to **all accessible accounts**.
See https://code.visualstudio.com/docs/tools/vscecli#_common-questions for more information.
3.4.2增量發(fā)布
版本號:major.minor.patch
如果想讓發(fā)布之后版本號的patch自增,例如:1.0.2
-> 1.0.3
,可以這樣:
vsce publish patch
執(zhí)行這個命令后會自動修改package.json
里面的版本號。同理,vsce publish minor
也是可以的。
3.5取消發(fā)布
vsce unpublish (publisher name).(extension name)
3.6更新
如果修改了插件代碼想要重新發(fā)布,只需要修改版本號然后重新執(zhí)行vsce publish
即可。
4.插件升級
4.1發(fā)布到了應用市場
如果發(fā)布到了應用市場,那么一般來說會自動檢測有沒有新版本,有的話會自動無感知升級,但具體什么時候會去檢測我還沒有研究過,已經(jīng)確定的是在擴展面板搜索插件名字會自動檢測,重啟vscode也會檢測。
4.2如果是本地打包
如果是打包成vsix
,那么只能自己實現(xiàn)升級檢測功能呢,通過對比服務器上某個文件的版本號,具體我就不細講了。
總結
到此這篇關于VSCode插件開發(fā)全攻略(十)打包、發(fā)布、升級的文章就介紹到這了,更多相關VSCode打包、發(fā)布、升級內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
嵌入式C程序優(yōu)質(zhì)編寫全面教程規(guī)范
這是一年前我為公司內(nèi)部寫的一個文檔,旨在向年輕的嵌入式軟件工程師們介紹如何在裸機環(huán)境下編寫優(yōu)質(zhì)嵌入式C程序。感覺是有一定的參考價值,所以拿出來分享,拋磚引玉2022-04-04java 中ArrayList與LinkedList性能比較
這篇文章主要介紹了java 中ArrayList與LinkedList性能比較的相關資料,需要的朋友可以參考下2017-03-03