Me encontré con un problema curioso: aparentemente, algunos módulos de Node.js tienen jerarquías de carpetas tan profundas que el comando de copia de Windows (o el de PowerShell, Copy-Item
que es lo que realmente estamos usando) llega al infame error de "ruta demasiado larga" cuando la ruta es superior a 250 caracteres de largo.
Por ejemplo, esta es una jerarquía de carpetas que puede crear un solo módulo de nodo:
node_modules\nodemailer\node_modules\simplesmtp\node_modules\
xoauth2\node_modules\request\node_modules\form-data\node_modules\
combined-stream\node_modules\delayed-stream\...
Parece una locura pero es una realidad con los módulos de Node.
Necesitamos usar copiar y pegar durante la implementación (no estamos usando una plataforma de destino "inteligente" como Heroku donde la implementación de Git sería una opción) y esta es una limitación seria en Windows.
¿No hay un comando npm o algo que compacte la node_modules
carpeta o tal vez incluya solo lo que realmente es necesario en tiempo de ejecución? (Los módulos de nodo generalmente contienen test
carpetas, etc. que no necesitamos implementar). ¿Alguna otra idea de cómo solucionarlo? Desafortunadamente, no usar Windows no es una opción :)
package.json
condependencies
? Si es así, ¿podría copiar sinnode_modules
y usar npm toinstall
oupdate
las dependencias?