2016-08-16 5 views
0

Ich benutze ein Knotenmodul namens swagger-tools, das intern von lodash abhängig ist. Wenn Swagger-Tools installiert sind, ist die Tiefe des Ordners node_modules sehr groß, was einen Fehler in meiner azurblauen Web-App (einem Windows-Server) verursacht. Ich habe irgendwo gesehen, dass dieses Problem mit npm 3 gelöst werden kann, und während npm 3 auf einem azure-Server installiert ist, kann ich es nicht zwingen, es zu benutzen - die Fehlerprotokolle zeigen an, dass npm 2 benutzt wird. Dies ist, wie ich es in package.json mache:Knoten js auf azurblau - tief verschachtelte Knotenmodule verursachen Fehler

"engineStrict": true, 
"engines" : { 
    "npm" : ">=3.0.0" 
} 

Die Knotenversion ist 4.4.7. Wenn jemand weiß über eine andere Möglichkeit, das Problem zu beheben, werde ich mich freuen.

Antwort

0

den npm Weg zur absoluten Lage zum npm Set 3 auf Azure Web Apps-Dateisystem in Custom Deployment Script wie @shachar beschrieben wird eine Lösung sein.

Und außerdem gibt es eine einfachere Problemumgehung. Sie können die nodejs-Version in Ihrer package.json auf die Version definieren, die die npm 3 enthält. Die niedrigste nodejs-Version, die npm3 enthält, ist 5.0.0.

So können Sie einfach ändern Sie den engines Abschnitt in Ihrem package.json:

"engines" : { 
    "node" : "5.0.0" 
} 

Sie https://azure.microsoft.com/en-us/documentation/articles/nodejs-specify-node-version-azure-apps/ für weitere Informationen verweisen.