J’utilise meanjs comme code de plaque de chaudière pour mon projet basé sur mongodb, nodejs, angularjs. J’ai cloné mon projet sur un serveur distant et j’ai rencontré l’erreur suivante lors de l’installation
npm ERR! [email protected] postinstall: `bower install --config.interactive=false` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the [email protected] postinstall script. npm ERR! This is most likely a problem with the meanjs package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! bower install --config.interactive=false npm ERR! You can get their info via: npm ERR! npm owner ls meanjs npm ERR! There is likely additional logging output above. npm ERR! System Linux 3.13.0-36-generic npm ERR! command "node" "/usr/bin/npm" "install" npm ERR! cwd /home/ubuntu/xyz/xyz npm ERR! node -v v0.10.35 npm ERR! npm -v 1.3.26 npm ERR! code ELIFECYCLE npm ERR! npm ERR! Additional logging details can be found in: npm ERR! /home/ubuntu/xyz/xyz/npm-debug.log npm ERR! not ok code 0
Lorsque j’ouvre le journal de débogage, les erreurs suivantes sont présentes. Meanjs supporte Node version 0.10.x, npm version 1.3.x. Les versions de mes nodejs et npm sont v0.10.35 et 1.3.26.
102 info install [email protected] 103 info postinstall [email protected] 104 verbose unsafe-perm in lifecycle true 105 info [email protected] Failed to exec postinstall script 106 error [email protected] postinstall: `bower install --config.interactive=false` 106 error Exit status 1 107 error Failed at the [email protected] postinstall script. 107 error This is most likely a problem with the meanjs package, 107 error not with npm itself. 107 error Tell the author that this fails on your system: 107 error bower install --config.interactive=false 107 error You can get their info via: 107 error npm owner ls meanjs 107 error There is likely additional logging output above. 108 error System Linux 3.13.0-36-generic 109 error command "node" "/usr/bin/npm" "install" 110 error cwd /home/ubuntu/xyz/xyz 111 error node -v v0.10.35 112 error npm -v 1.3.26 113 error code ELIFECYCLE 114 verbose exit [ 1, true ]
La commande postinstall peut échouer car bower
n’est pas installé en tant que package global (ce qui placera la commande bower
dans votre PATH.) Essayez ceci pour le corriger:
npm install -g bower
En outre, vous devez mettre à jour npm
vers la dernière version, car la version 1.3.26 est assez ancienne et n’est plus prise en charge:
npm install -g npm@latest
Vous pouvez avoir des dépendances conflictuelles, le cas échéant, utilisez des résolutions dans Bower.json .
Exemple:
{ "name": "test", "version": "0.0.1", "description": "test", "dependencies": { "bootstrap": "~3.3.2", "angular": "~1.3.12", "angular-resource": "~1.3.12" }, "devDependencies": { "angular-mocks": "~1.3.12", "angular-ui-utils": "~0.2.1" }, "resolutions": { "angular": "~1.3.12" } }
Si cela ne fonctionne pas, il peut s’agir du /app/.cache/bower/ utilisé pour le cache, commun et partagé par plusieurs utilisateurs. Créez un dossier temporaire et pointez-le dans le fichier .bowerrc .
Exemple:
{ "directory": "public/lib", "storage":{ "packages":"temp" } }
N’oubliez pas de mettre temp sur la liste .gitignore pour ne pas déployer les dossiers créés localement.
Exemple:
temp/*