1

我刚开始尝试将 Ensime scala ide-support 集成到 vscode 中。我已经从我的 atom 包https://github.com/ensime/ensime-atom中提取了一些集成部分到https://github.com/ensime/ensime-node中。

但是,当依赖于 vscode 的这个时,我会得到红色的波浪线,它无法找到: 红人

但是,代码仍然可以正常构建和运行。我很担心。我找到了这个:

问:我可以在我的扩展中使用原生 Node.js 模块吗?

答:Visual Studio Code 扩展包包含其所有依赖项。这意味着如果您在 Windows 上开发扩展并在发布该扩展时依赖本机 Node.js 模块,则 Windows 编译的本机依赖项将包含在您的扩展中。OS X 或 Linux 上的用户将无法使用该扩展。

目前使这项工作发挥作用的唯一方法是在您的扩展中包含适用于所有四个 VS Code 平台(Windows x86 和 x64、Linux、OS X)的二进制文件,并让代码动态加载正确的代码。

这是什么意思?我不能使用 fs、net、child_process 之类的?我认为有点需要它们,还是 vscode 通过抽象层提供所有这些?

4

1 回答 1

1

您确实已经将基本节点模块(fs 等)包含在 vscode 本身的依赖项中。

你还记得在你的 package.json 文件中包含这个模块作为依赖吗?

检查这一点的一种方法是清理你的代码,将它放在一个新文件夹中,然后运行“npm install”——如果一切正常,你就可以开始了。

请参阅此文档: https ://code.visualstudio.com/Docs/extensionAPI/extension-manifest

请务必阅读最新版本中的新扩展创作更新:https ://code.visualstudio.com/Updates

于 2016-03-04T17:11:54.983 回答