J'ai rencontré un curieux problème - apparemment, certains modules Node.js ont si profond les hiérarchies de dossiers que la commande de copie de Windows (ou la commande de PowerShell Copy-Item
qui est ce que nous utilisons actuellement) rencontre la fameuse erreur "path too long" lorsque le chemin est long de plus de 250 caractères.
Par exemple, voici une hiérarchie de dossiers qu'un seul module Node peut créer :
node_modules\nodemailer\node_modules\simplesmtp\node_modules\
xoauth2\node_modules\request\node_modules\form-data\node_modules\
combined-stream\node_modules\delayed-stream\...
Cela semble insensé mais c'est une réalité avec les modules Node.
Nous devons utiliser le copier-coller pendant le déploiement (nous n'utilisons pas une plateforme cible "intelligente" comme Heroku où le déploiement par Git serait une option) et c'est une limitation sérieuse sous Windows.
Il n'y a pas une commande npm ou quelque chose qui permettrait de compacter le fichier node_modules
ou peut-être n'inclure que ce qui est réellement nécessaire au moment de l'exécution ? (Les modules de nœuds contiennent généralement test
dossiers etc. que nous n'avons pas besoin de déployer). Avez-vous d'autres idées pour contourner ce problème ? Ne pas utiliser Windows n'est malheureusement pas une option :)