2016-11-28 1 views
3

J'exécute une configuration qui déploie automatiquement mon application à partir de Github à l'aide de l'option de déploiement Github dans Azure Web Apps. Cependant, je viens de créer une nouvelle application Web Azure et déployé mon application en utilisant la méthode habituelle, mais cette fois les fonctions Gulp dans mon gulpfile.js n'ont pas pu s'exécuter.Erreur lors de l'exécution de npm install gulp sur kudu

Après avoir regardé à travers mes journaux, je l'ai trouvé une erreur indiquant ce qui suit:

[17:12:08] Local gulp not found in D:\home\site\repository\src\Hood 
[17:12:08] Try running: npm install gulp 

donc j'ai essayé d'exécuter la commande npm install gulp sur la console Kudu directement. Et je reçois l'erreur suivante ...

D:\home\site\repository>npm install gulp 
npm WARN deprecated [email protected]: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue 
npm WARN deprecated [email protected]: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue 
npm WARN deprecated [email protected]: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to [email protected]^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree. 
npm ERR! Windows_NT 6.2.9200 
npm ERR! argv "D:\\Program Files (x86)\\nodejs\\4.4.7\\node.exe" "D:\\Program Files (x86)\\npm\\2.15.8\\node_modules\\npm\\bin\\npm-cli.js" "install" "gulp" 
npm ERR! node v4.4.7 
npm ERR! npm v2.15.8 
npm ERR! path D:\home\site\repository\node_modules\gulp\node_modules\gulp-util\node_modules\dateformat\node_modules\meow\node_modules\normalize-package-data\node_modules\validate-npm-package-license\node_modules\spdx-correct\node_modules\spdx-license-ids\package.json.1023181798 
npm ERR! code EINVAL 
npm ERR! errno -4071 
npm ERR! syscall rename 

npm ERR! EINVAL: invalid argument, rename 'D:\home\site\repository\node_modules\gulp\node_modules\gulp-util\node_modules\dateformat\node_modules\meow\node_modules\normalize-package-data\node_modules\validate-npm-package-license\node_modules\spdx-correct\node_modules\spdx-license-ids\package.json.1023181798' -> 'D:\home\site\repository\node_modules\gulp\node_modules\gulp-util\node_modules\dateformat\node_modules\meow\node_modules\normalize-package-data\node_modules\validate-npm-package-license\node_modules\spdx-correct\node_modules\spdx-license-ids\package.json' 
npm ERR! 
npm ERR! If you need help, you may report this error at: 
npm ERR!  <https://github.com/npm/npm/issues> 

npm ERR! Please include the following file with any support request: 
npm ERR!  D:\home\site\repository\npm-debug.log 

Pour votre information, voici la section scripts de mon dossier project.json, qui devrait (je pensais) installer gulp (si nécessaire) et puis exécutez ma fonction engouffreur appelé publish ... qui a toujours fonctionné avant ...

"scripts": { 
    "prepublish": [ "npm install", "bower install", "npm install gulp", "gulp publish" ], 
    "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ] 
} 

Des idées?

+0

Avez-vous essayé ce que le message d'erreur dit (renommer le fichier)? – Aurora0001

+0

Si cela ne fonctionne pas, essayez 'rm -rf./Node-modules' puis' npm install'. – Aurora0001

+1

Problème similaire sur https://github.com/npm/npm/issues/9696, vous pouvez essayer de mettre à niveau la version npm vers 3.x sur Azure. –

Répondre

3

Il s'agit probablement d'un problème de longueur de chemin d'accès Windows. Essayez d'utiliser npm 3.x à la place, car cela en résout beaucoup. Essayez de définir WEBSITE_NODE_DEFAULT_VERSION à 6.9.1 dans le paramètre de votre application Azure, qui vous fournira à la fois le nouveau nœud et le nouveau npm.

+0

Parfait! A travaillé la première fois. À votre santé!! –