VSCodeの拡張を自作していると、たまに拡張を更新したくなることがありますが、アクセストークンが期限切れになっていがちです。
ERROR {"$id":"1","customProperties":{"Descriptor":null,"IdentityDisplayName":null,"Token":null,"RequestedPermissions":0,"NamespaceId":"00000r
000-0000-0000-0000-000000000000"},"innerException":null,"message":"Access Denied: The Personal Access Token used has expired.","typeName":"Micr
osoft.VisualStudio.Services.Security.AccessCheckException, Microsoft.VisualStudio.Services.WebApi","typeKey":"AccessCheckException","errorCode"
:0,"eventId":3000}
期限切れになっていると vsce publish
しても上記のようなエラーが出ます。
更新のやり方をメモします。
まず Microsoft のアカウントを思い出しましょう。思い出したら
https://dev.azure.com/XXXXXXXX/_usersSettings/tokens
にアクセスしましょう。XXXXXXXX
はあなたのアカウントのユーザー名です。
New Token で新しいトークンを作成します。
にある通り、
- 「Organization」を「All accessible organizations」に
- 「Scopes」を「Custom defined」に
- 「Marketplace」で「Acquire」と「Manage」を選択
します。これで、新しいトークン YYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
が表示されるので、
vsce publish -p YYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
で vsce publish し直すことができます。
もし、ターミナルに直打ちするのはshellの履歴に残るから嫌だ!!!!!という場合は、
vsce login [ユーザー名]
まずこうします。
Publisher 'XXXXXXXX' is already known
Do you want to overwrite its PAT? [y/N] y
Personal Access Token for publisher 'XXXXXXXX':
と聞かれるので、新しいトークンを入力すればログインし直せます。そうしたら改めて vsce publish
です。