我在MS教程之后为TFS创建了一个新的扩展。出于某种原因,当我将Icon添加到我的扩展程序时,我可以在安装扩展程序时在“Extension Manager”页面中看到此图标,
但是当我从构建步骤菜单中选择我的扩展时,图像丢失了。
在“vss-extension.json”文件中,我添加了:
"icons": {
"default": "images/icon.png"
},
"files": [
{
"path": "images",
"addressable": true
},
{
"path": "dist",
"addressable": true,
"packagePath": "scripts"
},
{
"path": "infoTab.html",
"addressable": true
},
{
"path": "node_modules/vss-web-extension-sdk/lib",
"addressable": true,
"packagePath": "lib"
},
{
"path": "buildtask"
}
],
图像文件是32x32
该图像是否应该在“task.json”文件中引用?
任务本身有自己的图标,它必须存储在与task.json
相同的目录中,并且必须被称为task.png
并且是32x32像素,并且可选地还可以放置额外的task.svg
。这与一个扩展可以包含多个构建任务的事实有关,每个构建任务都有自己的图标。它没有从task.json中引用,正确的文件名将导致它被拾取。
举个例子,检查我的VSTS Snyk task。此外,如果这是您的完整扩展清单,那么它缺少Build任务贡献点:
"contributions": [
{
"id": "buildtask",
"type": "ms.vss-distributed-task.task",
"targets": [
"ms.vss-distributed-task.tasks"
],
"properties": {
"name": "buildtask"
}
}
对于Microsoft Visual Studio Team Foundation Server 15.105.25910.0版,接受的答案不正确。也许这对以前的版本来说是正确的。
icon.png
。task.json
位于同一文件夹中。task.json
文件不包含对此文件的任何引用。它通过使用这些约定来定位。