electron-builder 在打包为可分发格式之前修改打包的文件

需求:在electron正式打包为一个exe前修改安装目录内的某些文件

前言:在 Electron Builder 中,win-unpacked 是在 Windows 平台上使用 Electron Builder 构建应用程序后的输出文件夹名称。在该文件夹中,你将找到已解压缩的应用程序所需的所有文件。

大白话:electron-builder将win-unpacked内的文件打包成一个exe之后在最终安装目录中解压出来,也就是说我们修改这里的文件会影响最终用户使用的程序

解决方案

(1)添加afterSign配置,指定在打包和签名之后(但在打包为可分发格式之前)运行的函数

vue.config.js

  pluginOptions: {
    electronBuilder: {
      builderOptions: {
        afterSign: './update-shell.js',
      }
    }
 }

update-shell.js

const fs = require('fs')

// package-file放置一些要打包进安装包的文件(可以是套壳程序)
exports.default = async function(context) {
    // win-unpacked地址
    const packageFileDir = context.outDir + '\\package-file'
    const files = fs.readdirSync(packageFileDir);
    for(let i = 0; i < files.length; i++){
        const file = files[i]
        const inputAbsoPath = packageFileDir + '\\' + file
        const outputAbsoPath = context.appOutDir + '\\' + file
        // 同步方式
        try {
            // 打包文件移动成功
            fs.copyFileSync(inputAbsoPath, outputAbsoPath);
        } catch (error) {
            console.error('移动文件失败:', error);
        }
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值