在 ThinkJS 的用户群里,经常有开发者提出需要对源码进行加密保护的需求。我们知道 JavaScript 是一门动态语言,不像其他静态语言可以编译成二进制包防止源码泄露。所以就出现了 pkg、nexe 之类的工具,支持将 JS 代码连同 Node 一块打包成一个可执行文件,一来解决了环境依赖的问题,二来解决了大家关心的源码保护的问题。
在pkg 模块的 README 中,罗列了它的几大用处,如果你有下面的几个需求的话建议不妨试试。
为应用提供商业发行版而不用暴露源码
为应用提供 demo 而不用暴露源码
一键打包所有平台可执行文件而不需要对应平台环境依赖
提供自解压或自安装