【问题标题】:Error when running npm install gulp on kudu在 kudu 上运行 npm install gulp 时出错
【发布时间】:2017-04-12 13:30:50
【问题描述】:

我正在运行一个安装程序,它使用 Azure Web 应用程序中的 Github 部署选项从 Github 自动部署我的应用程序。但是,我刚刚创建了一个新的 Azure Web 应用程序并使用通常的方法将我的应用程序部署到它,但是这次我的 gulpfile.js 中的 Gulp 函数无法运行。

查看我的日志后,我发现了一个错误,说明如下:

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

所以我尝试直接在 kudu 控制台上运行npm install gulp 命令。我收到以下错误...

D:\home\site\repository>npm install gulp
npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated minimatch@0.2.14: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated graceful-fs@1.2.3: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs@^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

仅供参考,这里是我的project.json 文件的scripts 部分,它应该(我认为)安装 gulp(如果需要)然后运行我的 gulp 函数,称为 publish ...以前一直有效...

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

有什么想法吗?

【问题讨论】:

  • 您是否尝试过错误消息中所说的内容(重命名文件)?
  • 如果这不起作用,请尝试rm -rf ./node-modules 然后npm install
  • 类似问题github.com/npm/npm/issues/9696,可以尝试在Azure上升级npm版本到3.x。
  • 谢谢加里,你太棒了。这就是问题所在,我根据下面大卫的回答更新到 3.x,效果很好。

标签: node.js npm gulp azure-web-app-service kudu


【解决方案1】:

这很可能是 Windows 路径长度问题。尝试改用 npm 3.x,因为它解决了很多问题。尝试在 Azure 应用设置中将 WEBSITE_NODE_DEFAULT_VERSION 设置为 6.9.1,这将为您提供更新的 Node 和更新的 npm。

【讨论】:

  • 完美!第一次工作。干杯!!
猜你喜欢
  • 1970-01-01
  • 2017-10-02
  • 1970-01-01
  • 2018-11-22
  • 2021-10-31
  • 1970-01-01
  • 2016-02-09
  • 1970-01-01
相关资源
最近更新 更多