我安装了'node.js‘,然后从’‘命令行执行'npm install ’来安装'mqtt.js‘。现在要测试'mqtt客户端‘,我正在尝试执行:var mqtt = require('mqtt');,这会导致错误地说:
"Error: Cannot find module 'mqtt'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at repl:1:12
at REPLServer.self.eval (repl.js:110:21)
at repl.js:249:20
at REPLServer.self.eval (repl.js:122:7)
at Interface.<anonymous> (repl.js:239:12)
at Interface.EventEmitter.emit (events.js:95:17)"发布于 2017-09-25 11:22:42
首先,您需要添加MQTT库。如果服务器上安装了npm包管理器,则应该运行npm install mqtt --save。
发布于 2015-03-13 16:47:51
对于需要Node.js模块,请参阅本教程,该教程非常详细。
http://www.bennadel.com/blog/2169-where-does-node-js-and-require-look-for-modules.htm
顺便说一句,mqtt模块已经不再推荐createClient(),而是使用connect()。
如果您想要使用现成的在线代理测试MQTT客户端,请尝试http://www.robomq.io。
发布于 2019-04-16 05:51:13
这是Node开发人员面临的一个常见问题。在Unix系统上工作时,有时它可能不允许您安装这样的软件包。为此,您将需要sudo权限。有时,包只安装在本地模块中,当您试图从目录外导入它时,就会发生错误。有时,您的编译器读取您的依赖项,但无法在其中找到这个包,此时您也会遇到此错误。不管怎样,别担心。你只需要遵循下面的一些步骤。
initialize使用npm init来实现您的项目。这将初始化项目并生成package.json文件。--save和npm install命令。这将在package.json文件中保存您的依赖项。例如npm install mqtt --save-g标志全局安装它。在您的系统中,可以访问全局安装的软件包。例如npm install mqtt -g。注意: Unix系统需要SUDO权限才能全局安装它。
我希望这能帮到你。
https://stackoverflow.com/questions/18896943
复制相似问题