Azure 部署 Swagger Node.js 使用 Git 生成的服务器包失败

Azure deployment of Swagger Node.js generated server bundle using Git failing

我在将我的项目部署到 Azure 时遇到了一些困难。我已经创建了一个网络应用程序并遵循了部署中的所有步骤,但似乎某些库导致了系统路径太长的问题。 欢迎您的专家意见!

非常感谢。

下面是 Azure 生成的日志。

文件系统路径无效'D:/home/site/repository/node_modules/swagger-tools/node_modules/swagger-converter/node_modules/lodash.clonedeep/node_modules/lodash._basecreatecallback/node_modules/lodash.bind/node_modules/lodash._createwrapper/node_modules/lodash._basebind/node_modules/lodash._basecreate/.gitattributes': 传递给系统调用的数据区太小。\r\n

更新:

我删除了 node_modules 文件夹并让 Azure 下载所需的库。这进一步但仍然产生错误。以下是包含我的错误的 past-bin。

http://pastebin.com/m3BTRYQ4

更新:

我使用控制台手动尝试安装库。这是结果..

D:\home\site>npm install swagger-tools -g 错误! Windows_NT6.2.9200 错误! argv "D:\Program Files (x86)\nodejs.4.7\node.exe" "D:\Program Files (x86)\npm.15.8\node_modules\npm\bin\npm-cli.js" "install" "swagger-tools" "-g" 错误!节点 v4.4.7 错误! npm v2.15.8 错误!路径 D:\local\AppData\npm\node_modules\swagger-tools\node_modules\swagger-converter\node_modules\lodash.clonedeep\node_modules\lodash._basecreatecallback\node_modules\lodash.bind\node_modules\lodash._createwrapper\node_modules\lodash._basecreatewrapper\package.json.1152100249 错误!代码 EINVAL 错误!错误号-4071 错误!系统调用重命名

npm 错误! EINVAL:参数无效,重命名 'D:\local\AppData\npm\node_modules\swagger-tools\node_modules\swagger-converter\node_modules\lodash.clonedeep\node_modules\lodash._basecreatecallback\node_modules\lodash.bind\node_modules\lodash._createwrapper\node_modules\lodash._basecreatewrapper\package.json.1152100249' -> 'D:\local\AppData\npm\node_modules\swagger-tools\node_modules\swagger-converter\node_modules\lodash.clonedeep\node_modules\lodash._basecreatecallback\node_modules\lodash.bind\node_modules\lodash._createwrapper\node_modules\lodash._basecreatewrapper\package.json' 错误! 错误!如果您需要帮助,可以在以下位置报告此错误: 错误! https://github.com/npm/npm/issues

npm 错误!请在任何支持请求中包含以下文件: 错误! D:\home\site\npm-debug.log

D:\home\site>

看起来 swagger-tools 试图使用仅适用于 Linux / OSX 系统的命令。

感谢任何帮助!

我尝试使用更高的 node.js 版本,其中包含版本大于 3 的 npm。它在我这边成功运行。

请尝试在您的 package.json 文件中指定 node.js 版本,例如:

"engines": {
"node": ">=5.0.0" 
}

然后再次通过 Git 部署到 Azure。

如有任何疑问,请随时告诉我。