虽然可以通过编辑package.json文件实现更多选项,但是大多数nodejs程序只有一个入口,因此推荐使用命令行直接编译打包。

命令行

进入到项目根目录,以入口脚本为app.js为例:

pkg -o app -t node14-linux-x64 app.js

-o 参数 输出的可执行程序名称
-t 目标平台类型,这里是输出到linux平台

常见问题

首次使用会出现下载基础包时间过长的问题,如:

> Targets not specified. Assuming:node14-linux-x64, node14-macos-x64, node14-win-x64
> Fetching base Node.js binaries to PKG_CACHE_PATHfetched-v14.4.0-linux-x64    [                    ] 0%

这种情况下可以手动下载,进入页面手动下载对应的基础包:https://github.com/vercel/pkg-fetch/releases
然后拷贝到全局目录PKG_CACHE_PATH 内,PKG_CACHE_PATH 可以通过设置系统变量来设置:

export PKG_CACHE_PATH=/usr/local/node/pkg_cache_path

运行完毕后把这行命令建议放到 /etc/profile文件尾部实现长久生效。
运行过 pkg命令后,PKG_CACHE_PATH 目录下有个以版本号命名的目录,将刚才下载的文件重命名为所需文件拷贝到这个目录即可。例如上面命令提示的文件名是 fetched-v14.4.0-linux-x64 ,则拷贝时重命名为该名称。
再次运行pkg命令就不会下载了,打包速度很快!

使用pkg打包编译nodejs程序,手动设置缓存内容相关推荐

  1. 小程序手动设置缓存时间

    今天小程序添加了一个轮播图 把信息存储在缓存中 并加上缓存时间 防止后台修改了轮播图信息前台没有改变,直接上代码 //获取轮播图信息 getLunbo:function(e){var timestam ...

  2. bat调用ant_bat调用ant_Ant调用批处理文件编译VS2005程序

    1.ant调用批处理文件,用MSBuild编译VS2005程序 (1)设置环境变量 Path 增加 D:\Program Files\Microsoft Visual Studio 8\VC\vcpa ...

  3. kodi android 卡顿,给Kodi设置缓存来解决播放大文件卡顿

    给Kodi设置缓存来解决播放大文件卡顿 2021-03-02 16:21:20 28点赞 355收藏 31评论 Kodi可以算是电视盒子上最棒的播放器了,它具有强大的功能,优美的界面,相信很多人也都是 ...

  4. nodejs 学习之 pkg 打包成 可执行性文件

    安装pkg 默认情况下 pkg 不增加配置和参数的情况下,会打包当前nodejs 环境和win,linux,ios 三个平台的可执行文件 npm install -g pkg 设置配置文件 注意:静态 ...

  5. qml 应用程序图标设置和打包——qml

    前言 之前用qml开发ios,打包和设置图标的方式与桌面端开发不太一样,所以在这里记录一下. 设置图标 设置窗口图标比较简单,和QtWidgets开发设置窗口图标一样,当然,我在QtWidgets开发 ...

  6. 使用pkg打包nodejs文件

    1.全局安装pkg npm install -g pkg 2.下载自己电脑装的nodejs对应版本的打包文件 https://github.com/vercel/pkg-fetch/releases ...

  7. 解决【应用程序已被安全设置阻止】弹出框的手动设置方法

    在包含Applet标签的页面,运行中较高的jdk版本(例如jdk1.7或jdk1.8),会弹出[应用程序已被安全设置阻止]的安全警告框(如下图),这是由于oracle在jdk1.7(主要涉及到jdk7 ...

  8. 利用csc.exe 手动编译C#程序

    1. 创建见 cs代码文件 using System; class TestApp{static void Main(){Console.WriteLine("Test! 1,2,3&quo ...

  9. 手把手教你反编译小程序

    本次实验环境 操作系统: win10 10.0.19042 node: v14.17.0 微信开发者工具: Stable 1.05.2110290 前期准备 在电脑端安装模拟器工具,这里以夜神模拟器为 ...

最新文章

  1. HTML5学习路线资料,HTML5前端面试的技术栈
  2. Android开发-mac上使用三星S3做真机调试
  3. 教程-Delphi中Spcomm使用属性及用法详解
  4. 验证码之字符的特征提取
  5. Android测试写入文本Log
  6. 金蝶k3财务接口_记录用友T+接口对接的心酸历程
  7. 鹅厂优文 | ReactJS一点通
  8. kali 创建php可执行文件_Kali安装wordpress
  9. websocket 初识
  10. 如何下载所有Instagram照片
  11. DNA序列编码中Hairpin的定义和计算
  12. HTTP详解(更新完结)
  13. CPU与CUDA(GPU)的计算能力对比之二: Keras Resnet 运算效率比较
  14. 利用特征值与特征向量求解弹性力学中的主应力与主平面问题
  15. 计算机奇数页打印怎么设置,EXCEL怎么设置奇数页打印和偶数页打印
  16. 让最小化安装的CentOS 6.8能够浏览网页
  17. jmeter的参数和请求后的参数不一致问题
  18. table中 点击某一行变色
  19. a15仿生芯片和骁龙8gen1 哪个好
  20. 基础的图书馆管理系统

热门文章

  1. 【sql绕过】Bypass waf notepad of def
  2. u盘安装centos 7.2
  3. 聊一下C#开发者如何过渡到JAVA 开发者
  4. perl学习笔记(1)
  5. php 自己封装一个调用第三方接口的函数
  6. 模型驱动架构探索之游戏引擎设计 (二)粒度统一
  7. 实例3 输出由“*”组成的三角形
  8. TensorFlow之多核GPU的并行运算
  9. bzoj1770: [Usaco2009 Nov]lights 燈(折半搜索)
  10. 通用easyui查询页面组件