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。
更新:
我使用控制台手动尝试安装库。这是结果..
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。
如有任何疑问,请随时告诉我。
我在将我的项目部署到 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。
更新:
我使用控制台手动尝试安装库。这是结果..
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。
如有任何疑问,请随时告诉我。