typescript - 在 VisualStudio Code 從擴充功能安裝擴充功能
我目前正在嘗試開發一個 Visual Studio Code 擴充功能,用於擴充功能的部署。我的擴充功能應該做的是從 Marketplace 安裝另一個擴充功能。
顯而易見的方法來做這件事(至少我認為是)是創建一個子進程並執行
code --install-extension publisher.extension_name這個命令通常運作正常,但當它從插件內部執行時,它會返回:"錯誤:命令失敗:錯誤的選項:--install-extension"。
我首先想到的是擴展程式不會以正確的方式執行命令,所以我嘗試運行“dir C:\Users”作為測試,結果完全正常。之後我嘗試運行
code --list-extensions但是它返回了相同的錯誤。所以看起來我無法從插件內部運行任何使用 Visual Studio Code 本身的命令。有人能解釋這種行為嗎?有人知道是否有更好的方法可以從一個擴展安裝另一個擴展嗎?
答案#1
所以我找到了一個解決方案:我沒有啟動子進程(由於上述原因無法工作),而是使用 vscode API 並執行我的命令如下:
vscode.window.createTerminal().sendText("code --install-extension your.extension");我仍然不明白為什麼我的第一個想法行不通,而這個卻可行。我在問題中可能應該強調的是,這個插件的整個目的是從市場部署其他插件。這個插件本身並不依賴於其他插件,所以如評論中所建議使用 package.json 是不可能的。
答案#2
我遇到相同的問題,使用 powershell.exe 解決問題