Ensime scala ide-support を vscode に統合しようとしているところです。アトム パッケージhttps://github.com/ensime/ensime-atomから統合パーツの一部をhttps://github.com/ensime/ensime-nodeに取り出しました。
ただし、vscode からこれに依存すると、見つからないという赤い波線が表示されます。
ただし、コードは引き続きビルドされ、正常に実行されます。心配になりました。私はこれを見つけました:
Q: 拡張機能でネイティブ Node.js モジュールを使用できますか?
A: Visual Studio Code 拡張機能パッケージには、その依存関係がすべて含まれています。これは、Windows で拡張機能を開発し、その拡張機能を公開するときにネイティブの Node.js モジュールに依存する場合、Windows でコンパイルされたネイティブの依存関係が拡張機能に含まれることを意味します。OS X または Linux のユーザーは拡張機能を使用できません。
現時点でこれを機能させる唯一の方法は、VS Code の 4 つのプラットフォーム (Windows x86 および x64、Linux、OS X) すべてのバイナリを拡張機能に含め、適切なプラットフォームを動的に読み込むコードを用意することです。
これは何を意味するのでしょうか?fs、net、child_process などを使用できませんか? 私が考えるすべてが必要ですか、それともvscodeは抽象化レイヤーを介してそれらすべてを提供しますか?