Я зіткнувся з цікавою проблемою - очевидно, у деяких модулях Node.js є настільки глибокі ієрархії папок, що команда копіювання Windows (або команда PowerShell, Copy-Item
якою насправді ми користуємося) потрапляє в сумнозвісну помилку "занадто довгий шлях", коли шлях перевищує 250 символи довгі.
Наприклад, це ієрархія папок, яку може створити один модуль 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.
Нам потрібно використовувати copy-paste під час розгортання (ми не використовуємо "розумну" цільову платформу, як Heroku, де розгортання Git було б варіантом), і це є серйозним обмеженням для Windows.
Чи не існує команди npm або чогось, що може ущільнити node_modules
папку або, можливо, включати лише те, що насправді потрібно під час виконання? (Вузлові модулі зазвичай містять test
папки тощо, які нам не потрібні для розгортання.) Будь-які інші ідеї, як їх обійти? Не користуватися Windows, на жаль, не можна :)
package.json
зdependencies
набором? Якщо так, чи можете ви скопіювати безnode_modules
використання npminstall
абоupdate
залежностей?