ITPub博客

首页 > IT职业 > IT生活 > 在electron中使用node-serialport的正确姿势

在electron中使用node-serialport的正确姿势

IT生活 作者:leviyang 时间:2021-09-09 10:05:15 0 删除 编辑

开发环境准备

node-serialport是一个让node可以访问电脑串口设备的原生模块,在electron环境下使用并不是简单的npm install serialport就能解决的事情。对于刚开始接触node的人来说,不折腾一番基本上是不可能的。如果不明就里的一次性安装成功,那下一次安装多半也需要折腾的。

折腾过程中,免不了在Google,百度,GitHub上掘地三尺找解决方案。

本文尽可能的详细介绍如何在electron中编译并使用seialport。这里使用的系统环境是win10,需要准备一下几个材料:

  • node-gyp

  • python2.7 只能python2,不兼容python3

  • Visual Studio Build Tools 或者 VS

如果你的机器上没有安装过VS的话,并且后面不会使用VS的话,建议安装Visual Studio Build Tools即可。


图片描述

f45cbcd1-7560-4c61-a768-700394d95e8d

开始编译

在使用 Node 原生模块一文里介绍好几种使用原生模块的方法。这里介绍前面两种。

通过npm安装

通过设置一些环境变量来实现npm的安装。为了方便,可以选择写个.bat文件来导入这些参数。

@call "C:Program Files (x86)Microsoft Visual Studio2017BuildToolsVCAuxiliaryBuildvcvars64.bat"set PYTHON=D:Python27set npm_config_target=3.0.2set npm_config_arch=x64set npm_config_target_arch=x64set npm_config_disturl=https://atom.io/download/electronset npm_config_runtime=electronset npm_config_build_from_source=true

这里需要注意前两行的路径。

第一行是Visual Studio Build Tools安装后得到的一些批处理,主要是导入一些变量到cmd。
第二行是python的路径,如果电脑有多个python的话,建议通过set的方式导入到本次命令行。
剩下的都是electron相关的参数。target版本号可以在首页里面找。

到这里,可以尝试执行npm install serialport来安装serialport了。如果安装过程不会报错,则基本上OK了。

如果报错了,看一下报错信息。

如果是有404或者GET请求失败,则是网络问题。

另外,如果先前npm报错过,建议删除node_modules文件夹重新npm install。

使用electron-rebuild

使用rebuild(npm install electron-rebuild --save-dev)来构建serialport不需要设置太多变量,但是下面两行少不了的。

call "C:Program Files (x86)Microsoft Visual Studio2017BuildToolsVCAuxiliaryBuildvcvars64.bat"set PYTHON=D:Python27

接着执行npm install安装各种依赖。安装完后,执行.node_modules.binelectron-rebuild.cmd重新编译一下,serialport才能在electron里面使用。

编译过程中可以会出错,比如使用了python3或者msbuild版本错误等一堆乱七八糟的错误。具体看错误日志定位问题才能解决。



作者:谢mingmin
链接:https://www.jianshu.com/p/eac626c6b54f


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2880/viewspace-2816026/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-08-19

  • 博文量
    77
  • 访问量
    641