首页 > 解决方案 > VisualStudio Code 从扩展安装扩展

问题描述

我目前尝试为扩展部署开发一个 Visual Studio Code 扩展。我的扩展应该做的是从 Marktplace 安装另一个扩展。

这样做的明显方法(至少我认为是)是创建一个子进程并执行

code --install-extension publisher.extension_name

该命令通常可以正常工作,但是当它从插件中执行时,它会返回:“错误:命令失败:错误选项:--install-extension”。

我首先想到的是扩展程序不会以正确的方式执行命令,所以我尝试运行“dir C:\Users”作为测试,并且效果很好。之后我试着跑

code --list-extensions

但它返回了同样的错误。所以看起来我无法从使用 Visual Studio 代码本身的插件中运行任何命令。有人可以解释这种行为吗?有谁知道是否有更好的方法从扩展安装扩展?

标签: typescriptvisual-studio-codevscode-extensions

解决方案


所以我找到了一个解决方案:我没有启动子进程(如上所述由于任何原因都不起作用),而是使用了 vscode API 并使用以下命令运行我的命令:

vscode.window.createTerminal().sendText("code --install-extension your.extension");

我仍然不明白为什么我的第一个想法行不通,但这个想法行得通。我应该在我的问题中强调的是插件的全部目的是从 marktplace 部署其他插件。该插件本身不依赖于另一个插件,因此无法使用评论中建议的 package.json。


推荐阅读