把nodejs程序打包成可执行文件
在写好之后的nodejs程序,想发给同事的电脑上运行程序,就不得不下载node环境,还要安装第三方依赖包,非常的麻烦。
因此,可以借助一些插件来完成nodejs程序的打包,变成可以执行的文件。
将Node.js打包为可执行文件的工具有pkg、nexe、node-packer、enclose等,从打包速度、使用便捷程度、功能完整性来说,pkg是最优秀的。
这里使用pkg来进行打包node程序
- 安装pkg
1 2 | npm install -g pkg //全局安装 npm install pkg //局部安装 |
- 使用说明:
1 | pkg -h |
- 打包程序主入口js文件
1 2 3 | pkg -t win app.js // 把app.js打包成windows系统可执行的文件 [-t win] 不写,默认打包linux,windows,macOS,3个系统的可执行文件 |
- 使用的坑
1 2 3 4 5 6 | /* 在程序中,使用到的__dirname,打包之后会出现路径错误。为了避免这种错误,可以把__dirname替换成proccess.cwd() */ fs.readFile(__dirname+ "/1.txt" ,callback) || || || || || \/ \/ \/ \/ \/ fs.readFile(process.cwd()+ "/1.txt" ,callback) |
出现打包js程序下载fetched-v12.16.1-win-x64...等文件过慢,可以去github
下载源文件,然后修改名字(例如:win32-x64-binding.node)下载地址,下载过慢可以科学冲浪。
进入C:\Users\admin\.pkg-cache\v2.6目录,删掉里边的文件,将下载好的文件放入里边,将文件名改为对应的 fetched-XXXX
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步