在azure上运行时缺少节点模块

mmvthczy  于 2021-06-20  发布在  Kudu
关注(0)|答案(2)|浏览(416)

更新我的hubot项目后,它不再在azure上运行。我可以在本地运行一个干净的拷贝,在OSX和windows上,但是在azure上我得到以下错误
错误无法加载适配器松弛-错误:找不到模块“hubot”
在本地,我安装了node 6.9.1和npm 3.10.9。azure分别使用6.9.0和3.10.8版本。
不幸的是,我还没有弄清楚如何收集更多的信息,因为node应用程序似乎没有产生任何更详细的输出。
这个项目和azure网站最初是去年创建的,在我更新了npm依赖项和node的版本后开始失败。但是,在恢复到node 4.x和npm 2.x或node 0.10.x或npm 1.x后,仍然会出现相同的错误。
这是我基本上未修改的hubot项目,它再现了错误。自述文件包含了我将其部署到azure所采取的步骤。
如有任何见解,我们将不胜感激

编辑1

包.json

...
"dependencies": {
    "coffee-script": "^1.11.1",
    "hubot": "^2.19.0",
    "hubot-diagnostics": "0.0.1",
    "hubot-google-images": "^0.2.6",
    "hubot-google-translate": "^0.2.0",
    "hubot-help": "^0.2.0",
    "hubot-maps": "0.0.2",
    "hubot-pugme": "^0.1.0",
    "hubot-rules": "^0.1.1",
    "hubot-scripts": "^2.17.2",
    "hubot-shipit": "^0.2.0",
    "hubot-slack": "^4.2.1"
},
...
``` `hubot` 在package.json的依赖项中列出-如果不是,它就不会在本地运行。我知道Kudu跑了 `npm install --production` ,所以我确定它是在依赖项中,而不是devdependency中。

#### 编辑2

gary liu-msft能够阐明原因并提供解决方案,但为什么不能呢 `hubot-slack: 4.+` 在azure上运行,而在其他地方运行?
ojsjcaue

ojsjcaue1#

我成功的复制了你的问题,并且经过几次测试,似乎问题出现的时候会产生依赖性 hubot-slack 在一个高版本。请试试我的舞步。
转到应用程序服务编辑器(预览):
转到门户,选择应用程序服务,单击应用程序服务编辑器(预览),然后单击go。

改变 "hubot-slack": "^4.2.1""hubot-slack": "^3.4.2"package.json .
单击console,然后运行以下命令: npm install –production
在npm安装之后,单击run,您就可以运行它了。

vcirk6k6

vcirk6k62#

不用降级hubot slack,您可以尝试将其设置为app setting以下,这样可以解决问题
键:节点路径
值:d:\home\site\wwwroot\node\u modules

出于某些原因,hubot slack需要全局安装hubot:(
https://github.com/slackapi/hubot-slack/issues/28

相关问题