seekafter
V2EX  ›  Node.js

node 写的程序怎么打包成 exe

  •  
  •   seekafter · Aug 14, 2024 · 6302 views
    This topic created in 819 days ago, the information mentioned may be changed or developed.

    兄弟们,看见群友挣钱我好急啊 node 写的应用一般都是监听端口吧 能不能直接封装成 exe,双击就能运行的那种,哪怕双击后是打开浏览器访问地址呢 我是用的 nuxt,前后端都在一起的,求大佬 Electron 先不考虑吧,体积太大了 1723623237732.png

    35 replies  •  2025-12-18 09:01:52 +08:00
    BG7ZAG
    BG7ZAG
    Aug 14, 2024
    1
    Tauri
    wakarimasen
    wakarimasen
    Aug 14, 2024❤️2
    2
    1. tauri, wails ...
    2. https://github.com/vercel/pkg
    3. deno compile
    4. 用别的语言写个 NodeJS 自解压程序

    折腾半生,归来仍是 Electron
    querysecret
    querysecret
    Aug 14, 2024
    5
    嫌 electron 体积太大,抓紧放弃用 node 写
    wen20
    wen20
    Aug 14, 2024
    6
    @angrylid 请教个问题 Electron windows 系统保病毒吗, wails 报木马病毒。
    FightPig
    FightPig
    Aug 14, 2024
    7
    @wen20 go 写的东西在 win 下不知道为啥,很容易报毒,后面我们用 rust 重写了,结果一年后,360 报毒,后来弄成 Electron ,再没报
    renmu
    renmu
    Aug 14, 2024 via Android
    9
    一顿折腾,最后发现还是 electron 最香
    ming2050
    ming2050
    Aug 14, 2024
    10
    2B 的应用,其实除了开发者,没人会在意大小,只要别太离谱。
    106npo
    106npo
    Aug 14, 2024 via Android
    11
    压缩包放个 “运行我.bat”不行?
    wen20
    wen20
    Aug 14, 2024
    12
    @FightPig 没准是因为 vscode 基于 Electron 开发, 所以 windows 对 Electron 友好不报毒。
    censujiang
    censujiang
    Aug 14, 2024
    13
    electron
    CodeCodeStudy
    CodeCodeStudy
    Aug 14, 2024
    14
    @FightPig electron 太大了,一般来说病毒不会搞这么大的,太显眼了
    IamUNICODE
    IamUNICODE
    Aug 14, 2024
    15
    只用过 pkg 的路过。。
    user1284
    user1284
    Aug 14, 2024❤️2
    16
    @FightPig 身上有 rust 味儿, 被闻出来了
    hatch
    hatch
    Aug 14, 2024
    17
    pkg 挺好用的
    aikilan
    aikilan
    Aug 14, 2024
    18
    Electron 的坏处是啥?你从技术的角度出发觉得这个东西过于冗余,但是从客户角度出发,人家根本不关心。。。。
    yanulg
    yanulg
    Aug 14, 2024
    19
    pkg 就行了
    ahzjm
    ahzjm
    Aug 14, 2024
    20
    楼主交个我,收益分你点
    Trim21
    Trim21
    Aug 14, 2024
    21
    借楼问一下,不需要桌面环境,直接开个 http 服务器搭配浏览器的 nodejs 程序用什么工具比较合适?之前一直用的 pkg ,现在 pkg 停止维护了
    laikicka
    laikicka
    Aug 14, 2024
    22
    Nexe?
    laikicka
    laikicka
    Aug 14, 2024
    23
    @Trim21 vercel fork 了一份 vercel/pkg. 应该还能接着用.
    laikicka
    laikicka
    Aug 14, 2024
    24
    @laikick 搞错了. vercel 不是 fork.
    NotAfraidLP
    NotAfraidLP
    Aug 14, 2024❤️1
    25
    electron 现在打 exe 的包有 `portable` 版的, 几十 M 大小, 免安装的
    AV1
    AV1
    Aug 14, 2024
    26
    你用 bat 文件写个启动命令,然后告诉客户用这个 bat 文件来启动程序。
    zhyl
    zhyl
    Aug 14, 2024
    27
    试试能不能用 bun --bun 跑,可以的话直接 bun build --compile 编译成独立二进制文件
    eyeix
    eyeix
    Aug 15, 2024 via iPhone
    28
    @NotAfraidLP 正解
    kero991
    kero991
    Aug 15, 2024
    29
    tauri 吧,我最近挺喜欢这个,打包只有几 m 大
    但是 win7 不能用
    seekafter
    seekafter
    OP
    Aug 15, 2024
    30
    @kero991 我用 tauri 构建成功了,请问构建后我需要用程序提供接口,直接浏览器访问 http://localhost:1240 咋访问不到了呢
    pnpm create tauri-app --alpha 创建的项目
    vite 配置添加了 host:0.0.0.0
    seekafter
    seekafter
    OP
    Aug 15, 2024
    31
    @DOLLOR 现在就是这样用的.程序是 node 写的,这样打包需要客户有 node 环境
    seekafter
    seekafter
    OP
    Aug 15, 2024
    32
    GoRoad
    GoRoad
    Aug 15, 2024
    34
    还得是 electron 啊
    seekafter
    seekafter
    OP
    Dec 18, 2025
    35
    自己回复下吧. 当时嫌弃 electron,但现在的最终解决方案还是 electron. 项目是 https://github.com/wodepig/xxdl-electron
    其实就是一个空白的 electron 项目,启动时执行初始化脚本下载 dist.zip,然后用 electron 自带的 node 运行.
    简单一点的方法可以用 python 写, 自动下载 node 和 dist.zip 并运行. 目前打包体积是 140m,用了 minielectron 后 50m 左右, 能接受.
    另外不建议用 tauri 了, 因为我的是 nuxt 全栈项目,tauri 无法打包. 需要把项目变成 sidecar 才能携带, 太麻烦了不会用.
    pkg 相关的也用过, node 版本过低
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4238 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 63ms · UTC 09:05 · PVG 17:05 · LAX 01:05 · JFK 04:05
    ♥ Do have faith in what you're doing.