node脚本打包成exe可执行文件

1,423 阅读2分钟

使用pkg将nodejs脚本打包成exe可执行文件,使用者无需安装node环境即可使用nodejs脚本的功能

基本方法

  1. npm install -g pkg
  2. pkg index.js --target=node16 --platform=all --output=myapp
    • index.js: 入口文件路径。
    • target=node16: 指定目标Node.js版本,可以是具体的版本号或latest。
    • platform=all: 打包所有支持的平台(或指定具体平台如linux, win, macos)。
    • output=myapp: 输出文件名前缀,生成的文件将是myapp.exe 或相应格式。

设置开机自启动(没有黑窗口)

使用pkg打包的exe文件执行后会发现运行期间会打开一个命令行窗口,一旦关闭了窗口就会导致node服务也关闭了,这对使用者不太友好,所以我们需要使用其他的方法让这个服务后台启动

  1. 首先要下载工具包 winsw:github.com/winsw/winsw…

我们最好使用稳定点的版本,然后下载下图的两个文件

image.png

  1. 将下载的两个文件和 node打的exe程序 放到同一个目录

  2. 修改 sample-minimal.xml 配置文件

image.png

记得将配置文件中:执行的命令下面那一行中的server.exe改为你自己的node服务程序

  1. 将sample-minimal.xml配置文件和winsw程序包 重命名

两个文件都改为一样的名字,比如nodeStart

  1. 新建两个bat文件

这两个bat文件的内容中的nodeStart.exe就是第四步中winsw程序包改的文件名

install.bat (在系统中注册服务)

@echo off
start cmd /k "nodeStart.exe install"
exit

uninstall.bat (将服务从系统中卸载)

@echo off
start cmd /k "nodeStart.exe uninstall"
exit

6.最后一步

运行install.bat,成功后重启电脑,然后打开任务管理器,找到服务选项,在服务选项中就可以找到我们的服务了。如下图

image.png

参考文章:blog.csdn.net/weixin_4493…