最近有个需求是使用nodejs做API服务器,来解析提交的数据,解析成指令通过USB发送给打印机,并打包成exe安装在客户的windows系统下。在开发过程中遇到的问题如下:
nodejs官网:https://nodejs.org/zh-cn/download
pkg打包:https://github.com/vercel/pkg-fetch
一、安装程序
在获取到Nodejs程序文件时,我们使用 npm install 或 cnpm install 来安装应用。建议是使用cnpm install 来安装,毕竟是国内的,速度上会更快。npm install安装时可能某些组件的版本会不同。比如小编的USB版本在npm install安装时是最新的2.15.0版,但是跟现在的js程序不兼容导致出错,我们可以自定义安装某个版本如 npm install usb@2.14.0 表示是安装的2.14.0的版本。
二、安装pkg打包成exe文件
使用命令:npm install -g pkg
在打包exe时经常会遇到pkg与node版本不一致的问题,例如在执行 pkg -t win index.js 时会出现 Error! No available node version satisfies 'node14',这样的报错。解决版办是安装正确的pkg-fetch版本。我们可以先把 C:UsersAdministrator.pkg-cache 这个目录清空,然后让程序自已去下载合适的版本。
三、写打包指令到package.json文件
上面的 pkg . -t node14-win-x64 --out-path=dist/ --debug 就表示是在调试模式下打包到 dist目录,