pkg将项目打包成 exe应用, 双击启动 node
theme: juejin
highlight: vs2015
目的 :源码安全 双击应用就可以启动
1-安装好node
2-安装pkg
可以直接全局安装pkg,方便打包
npm install -g pkg
3-package.json配置
\\ package.json
\\我是win64系统node版本是14.17.0,所以写node14-win-x64 根据实际改
\\bin是自己要打包项目的入口文件
{"scripts"{"pkg":"pkg . -t node14-win-x64 --out-path=dist/"},"bin": "./app.js"
}
结合官方文档内容,我们来看下这行代码中这些参数的意思:
1、 pkg .,意思就是它会寻找指定目录下的package.json文件,然后再寻找bin字段作为入口文件。
2、-t 用来指定打包的目标平台和Node版本,如-t node12-win-x64,node12-linux-x64,node12-macos-x64,可以同时打包3个平台的可执行程序;
3、–out-path 用来指定输出的目录地址;后面的"=dist/“就是指定的目录地址,也可以这样写”–out-path dist/",用空格替代"="
这是我的app.js
如果项目只用到了require()形式就不需要再配置了
但要是用了__dirname拼接变量的形式,就要在packge.json中进行配置了
比如这样的
app.set('views',path.join(__dirname, './views'))
...
app.use(express.static(path.join(__dirname, './public')));就要这样配置
{"scripts"{"pkg":"pkg . -t node14-win-x64 --out-path=dist/"},"bin": "./app.js",
"pkg": {"assets": ["public/**/*","views/**/*"],},
}
public/**/* 这种通配符写法,表示public下所有文件都被打包进去了; assets表示静态资源相关配置,scritps表示需要配置才能打包的js脚本
4-进行打包
已经配置完了,进行打包
npm run pkg
成功的样子
失败/加载中的样子
一般都会特别慢 然后报错
5-解决问题
方法:https://github.com/vercel/pkg/issues/419
因为访问的外国网站下的包几十M,网络不是很强就会超时
手动下载来解决
01
name 值就是需要下载的文件名(sha文件也要下)
下载地址 https://github.com/vercel/pkg-fetch/releases
02
然后把下载的文件复制到C:\Users\Administrator.pkg-cache\v2.6
这个文件目录下,记得同时修改文件名称,我这里下载的是uploaded-v2.6-node-v10.21.0-win-x64
,那么将它重名为fetched-v10.21.0-win-x64
下面是我的
最后再进行打包,就很快
参考的相关文件:
https://juejin.cn/post/6844903937057751054#comment
https://juejin.cn/post/6982133816001462285#heading-7
https://juejin.cn/post/6925348130078605325
https://github.com/vercel/pkg/issues/419
pkg将项目打包成 exe应用, 双击启动 node相关推荐
- Java项目打包成exe的详细教程
Java项目打包成exe的详细教程 把Java项目打包成exe共分为以下两步: 1. 利用Eclipse先把Java项目先打成jar包 2. 利用exe4j工具把jar包转成exe 这里以Java项目 ...
- vue项目打包成exe可执行文件
Vue项目打包成exe可执行文件 实现思路:从electron官网上拉取代码,把官网上拉取下来项目中的index.html替换成 自己vue项目打包好的dist文件中的index.html,输入打包e ...
- 使用 GraalVM 将纯 JavaFX 项目打包成 EXE
使用 GraalVM 将纯 JavaFX 项目打包成 EXE GraalVM 的环境搭建 打包不含 FXML 的纯 JavaFX 项目 打包含 FXML 的纯 JavaFX 项目 测评 在 Intel ...
- 使用 GraalVM 将基本的 Java 项目打包成 EXE
使用 GraalVM 将基本的 Java 项目打包成 EXE GraalVM 的环境搭建 将基本的 Java 项目打包成 EXE 将 JAR 转化为 EXE GraalVM 与 Java 中其它打包成 ...
- Java项目打包成exe
windows平台下,eclipse的Java项目打包成exe教程,超详细-- 一,在eclipse开发平台下开发好Java项目(无错误,并可正确运行),首先要把Java项目打包成.jar文件.如下图 ...
- 记一次maven项目打包成exe文件过程
记一次maven项目打包成exe文件过程 步骤 (网上很多) 将java代码在idea中打包成可执行的Jar包 通过exe4j软件打包成exe文件 问题 打包成jar包要么选择IDEA自身打包要么用m ...
- cxfreeze将python项目打包成.exe
最近要把一个python项目打包成.exe迁移到其他无环境的电脑上直接运行,最初打算使用pyinstall,不过有人说pyinstall打包总是缺少某些依赖,所以就在网上寻找方法,选择了使用cxfre ...
- Tips--解决Python打包成exe文件大启动慢的问题
解决Python打包成exe文件大启动慢的问题 1. 问题描述 2. 产生原因 2. 解决方法 2.1 建立虚拟环境 2.2 安装所需库 2.3 在环境中打包 2.4 附pyinstaller参数表 ...
- vue项目打包成.exe桌面应用
1.将vue项目打包成dist文件:npm run build:prod 2.新建文件夹,使用git下载(下载其中一种就行) gitee git clone https://gitee.com/wal ...
- java普通项目打包成exe可执行文件
· 提示,无论打包成jar还是exe程序,运行都需要JDK,需要给没有安装JDK的电脑安装: · maven项目有自己的打jar包方式,我们普通的java项目,可以安照步骤一打包成jar: 步骤一.先 ...
最新文章
- 莱芜市公安局交警支队智能交通项目集成及容灾公开招标公告
- jpa 指定字段内容按照顺序排序(orderBy when then)
- SQL中的Where,Group By,Order By和Having的用法/区别
- group_concat
- mysql技术内幕《读书笔记》
- 数量场的等值面与矢量场的矢量线的一些基本的东西(写得不好)
- 板邓:wordpress编辑器发布文章自动首行缩进
- Jquery表单清空
- 软件开发版本号命名规则
- 人工智能 一种现代方法 第4章 超越经典搜索
- Hive教程(02)- Hive安装
- 对口升学计算机基础知识教案,教案河北省计算机专业对口升学讲义--计算机基础知识部分.ppt...
- C++入门基础之计算使用某快递公司运输货物的运费
- 软件业:印度比中国强在哪
- java如何爬取qq音乐_爬取QQ音乐
- 第九课堂-如何通过着装打造黄金比例完美好身材!
- android开启软键盘,Android肿么弹出软键盘,和开启软键盘
- Error: recoverUnfinalizedSegments failed for required journal
- Authentication failed for 解决办法
- JQuery是什么?怎么使用JQ?