奇妙な問題に遭遇しました - どうやら一部の Node.js モジュールはフォルダー階層が非常に深いため、パスが 250 を超えると、Windows のコピー コマンド (または実際に使用している PowerShell のコマンドCopy-Item
) で悪名高い「パスが長すぎます」というエラーが発生します。文字の長さ。
たとえば、これは単一の Node モジュールで作成できるフォルダー階層です。
node_modules\nodemailer\node_modules\simplesmtp\node_modules\
xoauth2\node_modules\request\node_modules\form-data\node_modules\
combined-stream\node_modules\delayed-stream\...
ばかげているように見えますが、Node モジュールでは現実です。
展開中にコピー アンド ペーストを使用する必要があり (Heroku のように、Git 展開がオプションとなる「巧妙な」ターゲット プラットフォームは使用していません)、これは Windows での重大な制限です。
node_modules
フォルダを圧縮したり、実行時に実際に必要なものだけを含めたりする npm コマンドなどはありませんか? (ノードモジュールには通常、test
展開する必要のないフォルダーなどが含まれています。)それを回避する方法はありますか? 残念ながら、Windowsを使用しないという選択肢はありません:)