【问题标题】:How does VSCode ensure that all node dependencies are installed for extensions?VSCode 如何确保为扩展安装了所有节点依赖项?
【发布时间】:2017-03-13 16:27:36
【问题描述】:

我目前正在尝试自己构建一个可插入的应用程序,并且想知道 vscode 如何管理扩展的依赖项。每个扩展目录中的npm install 是否只使用它们?还是它有一些全局范围,每个依赖项只加载一次到运行时并重用?

我之所以这么问,是因为我想让这个机制尽可能的快速高效。

【问题讨论】:

    标签: javascript node.js npm visual-studio-code


    【解决方案1】:

    VS Code 在一个名为扩展主机的单独进程中加载​​和运行扩展,该进程是一个 node.js 进程。来自package.json 的依赖项在扩展的打包过程中安装,每个扩展都使用自己的依赖项副本。

    【讨论】:

    • 感谢您的回答。每个扩展都有自己的扩展主机进程吗?对不起,如果我很烦人,但是扩展主机进程如何与电子的主进程通信?我在vs/workbench/node/ 下发现了一些与扩展有关的代码。看起来是安装过程。
    • 请问在自己的进程中加载​​扩展有什么好处?
    • 隔离。扩展不能相互影响或影响主编辑器。编辑器不会受到扩展程序可能遭受的任何性能问题或崩溃的影响。
    • 最后一个问题:VSCode 是为每个扩展使用一个节点进程,还是使用一个进程将所有扩展一起加载?
    • 扩展也被单独的进程隔离
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-30
    • 1970-01-01
    • 2019-07-15
    • 2014-11-27
    相关资源
    最近更新 更多