likes
comments
collection
share

Node.js v20 单文件可执行程序尝鲜

作者站长头像
站长
· 阅读数 58

起步

使用 nvs 安装并使用最新版 Node

nvs add latest

Node.js v20 单文件可执行程序尝鲜

nvs use latest

Node.js v20 单文件可执行程序尝鲜

创建项目

mkdir single-exe
cd single-exe

添加 hello.js 文件

console.log(`Hello, ${process.argv[2]}!`);

添加 sea-config.json 文件

{ "main": "hello.js", "output": "sea-prep.blob" }

Node.js v20 单文件可执行程序尝鲜

执行命令

node --experimental-sea-config sea-config.json 

Node.js v20 单文件可执行程序尝鲜

以下命令以 MacOS 为例,具体查看 Single executable applications

cp $(command -v node) hello 
codesign --remove-signature hello 
npx postject hello NODE_SEA_BLOB sea-prep.blob \
    --sentinel-fuse NODE_SEA_FUSE_fce680ab2cc467b6e072b8b5df1996b2 \
    --macho-segment-name NODE_SEA

Node.js v20 单文件可执行程序尝鲜

生成可执行文件 hello

Node.js v20 单文件可执行程序尝鲜

codesign --sign - hello 

最后执行 hello

./hello world

Node.js v20 单文件可执行程序尝鲜

本文完,感谢阅读🌹

转载自:https://juejin.cn/post/7287596224331644991
评论
请登录