2017-10-11 150 views
0

安装物联网节点红包AWS我有一个armv5tejl件,其中,我有 节点v0.10.40和NPM 1.4.28错误而在armv5tejl

我想安装以下包以下版本 - https://www.npmjs.com/package/node-red-contrib-aws-iot

我以前使用过相同的配置,并成功安装了此contrib模块并使用AWS IoT。 现在,当我尝试安装它抛出我一些警告消息如下相同的模块 -

npm WARN engine [email protected]: wanted: {"node":">=4.0.0"} (current: {"node":"0.10.40","npm":"1.4.28"}) 
npm WARN engine [email protected]: wanted: {"node":">=4.0.0"} (current: {"node":"0.10.40","npm":"1.4.28"}) 
npm WARN unmet dependency /opt/node-red/node_modules/serialport/node_modules/node-pre-gyp/node_modules/tar-pack requires [email protected]'~2.2.0' but will load 
npm WARN unmet dependency /opt/node-red/node_modules/serialport/node_modules/debug, 
npm WARN unmet dependency which is version 2.6.3 

现在,当我打开节点红色,我不找AWS-IOT的任何节点。我检查了节点红色日志文件,发现以下内容 -

/opt/node-red/node_modules/node-red-contrib-aws-iot/node_modules/aws-iot-device-sdk/node_modules/mqtt/node_modules/websocket-stream/server.js:6 
class Server extends WebSocketServer{ 
^^^^^ 

我想使用相同的模块。我如何解决这个问题并让它工作?

回答

1

您需要将您的NodeJS升级到至少v4.0.0。 (您目前使用v0.10.40而不是v0.4.10,您在问题开始时提到并且不再支持)

它看起来像自上次安装它之后节点已更新,现在使用的语言功能仅在NodeJS v4.0.0或更高版本中可用。

如果您确实无法更新NodeJS版本,那么您可以使用'@'语法强制安装旧版本。但是如果不知道为什么更新节点,则不能保证旧版本能够继续正常工作。

+0

哦,是的。你是对的。更正了问题中的节点版本。好的,我可以尝试先使用@语法进行安装。我试图更新NodeJS,但它以某种方式完全破坏了系统,并且一切都停止工作。 – Dan

+0

任何具有二进制组件的节点在升级节点后都需要重建。 – hardillb

+0

好吧,这很奇怪。我在rPi中安装了相同的模块,并将包中的内容从node_modules文件夹复制到此设备,并且它工作 – Dan