J'ai rencontré un problème curieux - apparemment, certains modules Node.js ont des hiérarchies de dossiers si profondes que la commande de copie de Windows (ou PowerShell, Copy-Item
qui est ce que nous utilisons réellement) rencontre la tristement célèbre erreur "chemin trop long" lorsque le chemin est supérieur à 250 caractères longs.
Par exemple, il s'agit d'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 fou 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 plate-forme cible "intelligente" comme Heroku où le déploiement de Git serait une option) et c'est une limitation sérieuse sur Windows.
N'existe-t-il pas une commande npm ou quelque chose qui compacterait le node_modules
dossier ou n'inclurait peut-être que ce qui est réellement nécessaire au moment de l'exécution? (Les modules de nœud contiennent généralement des 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 :)
package.json
avecdependencies
? Si tel est le cas, pouvez-vous copier sansnode_modules
et utiliser npm versinstall
ouupdate
les dépendances?