在nodejs引入的第三方库中,大部分插件都是nodejs原生开发,使用pkg可以快速打包,生成windows、linux(ubuntu、centOS等)、麒麟系统下面执行文件。遇到了第三方插件gdal、sharp、sqlite3,在webstorm中打包生成执行文件,跨平台部署的时候会出现找不到###.node文件,需要获取部署平台下面对于的.node文件。
以nodejs中sharp打包跨平台文件为例。
一、软件版本
nodejs:v18.17.1,使用express框架开发代码。
nvm进行nodejs版本管理,快速切换和部署版本
系统:windows 11、ubuntu、macOS
二、编译程序
在ubuntu下面安装sharp文件时,形成了软链接库,无法对node_modules进行复制。则考虑在macOS进行pkg打包。pkg打包见笔者文章。
不同平台下面sharp安装命令见官方说明。
sharp 中文网
整理独立依赖的node_modules,单独管理,用于部署。
三、在多个系统中测试
在笔记本上