吐槽一下 nodejs 的打包 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
redsonic

吐槽一下 nodejs 的打包

  •  
  •   redsonic 2018 年 4 月 19 日 6857 次点击
    这是一个创建于 2929 天前的主题,其中的信息可能已经有所发展或是发生改变。

    本人非前端,受 electron 桌面应用的吸引编译了 github 上的几个项目包括 vscode。期间包依赖的问题就不提了,简单的 bug 也能修过去,webpack 以后基本都能在本地跑起来。可是其中设置好 build 能用 electron-builder 打包没有几个,不是简单的小错误就是 build 没配置好甚至没有配,却还写在 script 里。令人纳闷的是 release 页面上各个平台的熟肉包一应俱全,我都开始怀疑是不是作者自己打的包。 是不是前端做应用的都不太重视打包、分发?

    补充一下 vscode 的 rpm 打包方法: build 完之后 yarn run gulp vscode-linux-x64-min yarn run gulp vscode-linux-x64-build-rpm

    这还是从 debian 的打包过程看出来的: https://github.com/Microsoft/vscode/wiki/Cross-Compiling-for-Debian-Based-Linux 其他地方我还真没找到。

    vscode 是我折腾源码构建、打包问题最少的一个项目了( encounter 个位数) 也许真的没人在乎自己从源码构建、打包,这些项目的 issue 几乎很少提这类问题。

    5 条回复    2018-04-19 16:20:13 +08:00
    POPOEVER
        1
    POPOEVER  
       2018 年 4 月 19 日
    用第三方的 packager 啊
    crysislinux
        2
    crysislinux  
       2018 年 4 月 19 日 via Android
    除了代码是 nodejs 写的,跟 nodejs 打包有啥关系。
    doubleflower
        3
    doubleflower  
       2018 年 4 月 19 日 via Android
    去看 archlinux 打包文件,那个没有别的乱七八糟的,就是打包过程的干货
    redsonic
        4
    redsonic  
    OP
       2018 年 4 月 19 日
    @crysislinux webpack、electron-builder 和 nodejs 没关系? 我是觉得打个包还要必须熟悉 nodejs 是有点奇怪的,相较其他语言的项目。

    @doubleflower 对于 python、perl 以及传统 c\c++的确实很有用,但 nodejs 很多就是 archlinux only,比如 vscode,换到 suse 就不行,各种奇奇怪怪的依赖问题,虽然最后也能搞定可是感觉非常不值,我 TM 折腾一下午为啥不直接连同 node_modules 打个 tar 拉倒。而且就算是 archlinux,上面的 comment 也明显比其他语言项目的多。
    crysislinux
        5
    crysislinux  
       2018 年 4 月 19 日
    webpack 本身就不是什么 nodejs 的包都能打。再者这也不是 nodejs 提供的功能。不熟悉一个项目的时候从源码构建本来也不容易,哪个语言的都是这样子,以前 linux 那些库,自己编译更是到处出错。这是必由之路。。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2722 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 41ms UTC 03:51 PVG 11:51 LAX 20:51 JFK 23:51
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86