Poy Chang's Blog

發行擴充套件至 Extension Marketplace

在建立了 VS Code 擴充套件後,你可以選擇發行至官方的 Extension Marketplace,或者封裝成 .vsix 做分享,本篇就來介紹發行擴充套件至 Extension Marketplace 的動作。

安裝

首先你的環境必須要有 Node.js,然後執行下列指令安裝 vsce 工具:

1
npm install -g vsce

產生 Personal Access Tokens

Extension Marketplace 上的擴充套件是透過 Visual Studio Team Services 來做認證和管理的,因此要發佈前必須先在 Visual Studio Team Services 上建立一個 Personal Access Tokens。

首先你必須要有 Visual Studio Team Services 帳號(可以參考這篇文件建立),例如 poycode.visualstudio.com,登入後點選右上角的選項然後選擇 Security(如下圖),會進入安全性設定頁面。

進入安全性設定

在 Personal Access Tokens 選單中點選 Add 新增一個 Token。

選擇新增 Token

接著請輸入該 Token 的描述及有效期。

要注意 Accounts 欄位要選擇 All accessible accounts,然後 Authorized Scopes 要選擇 All scopes,這樣才能順利使用。

新增 Token

完成後,畫面會顯示這次建立的 Personal Access Token,**請注意!**此 Token 只會顯示這一次,請妥善保存!

建立發行者

我們必須建立一個 Extension Marketplace 的發行者,指令如下:

1
vsce create-publisher (publisher name)

建立的過程中,會提示你輸入對應的 Token 作為驗證。

這動作也可以在這裡 https://marketplace.visualstudio.com/manage 建立,然後再從本機透過 vsce login (publisher name) 來登入。

執行發行

如果都設定好了,可以使用下列指令執行發行:

1
vsce publish

發行成功了話會有下圖的訊息。

發行成功

發行時要注意 package.json 裡面的 version 版號要更新,不然會報錯如下圖。

版本重複

因此 vsce 有一個自動增加版號的指令,搭配語意化版本,摘要如下:

  1. 主版號 major:當你做了不相容的 API 修改
  2. 次版號 minor:當你做了向下相容的功能性新增
  3. 修訂號 patch:當你做了向下相容的問題修正

這樣就可以在發行的時候使用 vsce publish minor 來自動增加次版號,依此類推。

如果想要手動指定板號,也可以用 vsce publish 1.0.1 將發行的板號改成 1.0.1

封裝

如果不想要發佈到 Extension Marketplace,只想要留在自己本機自己使用了話,可以執行 vsce package 將寫好的擴充套件封裝成 .vsix 檔,當然,你也可以將此封裝檔分享給你的朋友們。

在 Visual Studio Code 中如何手動安裝 .vsix 檔,可以參考此段官方文件 Install from a VSIX。

上架囉!

完成上面一系列的動作,你就可以從 Extension Marketplace 搜尋到你的擴充套件囉!

擴充套件上架圖

這篇發行的擴充套件包在此 PoyChang Extension Pack,有興趣的朋友們可以下載來看看。


參考資料: