记录一次electron打包提示文件找不到的解决方法

没有配置files选项

files的作用是配置打包到应用程序的构建资源 就是说如果你想使用项目那个目录下的文件 就得通过files配置一下不然就会报错

json文件或者yml文件会报的错

格式是这样的

js 复制代码
"files": ["dist-electron", "dist"],

electron打包配置的几种方式

  1. 直接在package.json中配置
  2. 在项目根目录下创建electron-builder.yml文件配置
  3. 根目录下创建.jsonjson5toml文件配置
  4. 配置文档 http://electron.org.cn/builder//configuration/configuration.html

electron打包要注意的事项

  1. 文件路径不要包含中文
  2. electron-builder配置也不要包含中文

用过的项目配置

javascript 复制代码
{
  "productName": "项目名称",
  "appId": "appId",
  "directories": {
    "output": "release/v${version}" // 项目输出目录
  },
  "files": ["dist-electron", "dist"], // 要用到的构建资源
  "asar": true,
  "nsis": {
    "oneClick": false, // 是否创建一键式安装程序或辅助。
    "perMachine": true, // 是否显示辅助安装程序的安装模式安装程序页面(选择每台机器或每个用户)。或者安装是否总是针对所有用户(每台机器)。
    "shortcutName": "${productName}", // 将用于所有快捷键的名称。默认为应用程序名称
    "uninstallDisplayName": "${productName}", // 卸载程序在控制面板上的显示名称。
    "runAfterFinish": true, // 完成后是否运行安装的应用程序。对于辅助安装程序,相应的复选框将被删除。
    "deleteAppDataOnUninstall": true, // 只有一键式安装程序。卸载时是否删除应用数据。
    "allowToChangeInstallationDirectory": true, // 仅辅助安装。是否允许用户更改安装目录
    "removeDefaultUninstallWelcomePage": true,  // 仅辅助安装。是否删除默认的卸载欢迎页面
  },
  "win": {
    "icon": "dist/favicon.ico",
    "artifactName": "${productName} v${version}.${ext}",
    "requestedExecutionLevel": "requireAdministrator"
  },
  "dmg": {
    "sign": false
  },
  "mac": {
    "target": "dmg",
    "icon": "dist/osicon.png",
    "hardenedRuntime": true,
    "gatekeeperAssess": false
  },
  "linux": {
    "target": [
      "AppImage",
      "deb"
    ],
    "icon": "dist/winicon.png",
    "artifactName": "${productName} v${version}.${ext}",
    "desktop": {
      "Icon": "/opt/v3-electron-vite/resources/app/dist/winicon.png"
    }
  }
}
相关推荐
亿元程序员10 分钟前
为什么现在 AI 这么发达了,还要坚持手搓教程?
前端
三小河43 分钟前
在 Codex 桌面端接入 DeepSeek 模型(CC Switch 代理中转)
前端·javascript·人工智能
shmily麻瓜小菜鸡1 小时前
JS/TS 易踩坑知识点 — 自动分号插入(ASI)
开发语言·javascript·ecmascript
CoderYanger1 小时前
前端基础——JavaScript(WebAPI)代码案例
java·开发语言·前端·javascript·css·前端框架·html5
恋猫de小郭1 小时前
Shopify 从 React Native 回到 Swift/Kotlin,但是你以为有手就行??
android·前端·ios
BillKu2 小时前
Element Plus 的 el-tab-pane:lazy 的说明
前端·javascript·vue.js
爱勇宝2 小时前
《道德经》第 11 章:真正有用的,常常是你没写出来的那部分
前端·后端·产品
jearry2 小时前
WebView2 原生拖放的桥接之道:拆解 yyzTools 的 drop-zone.js
前端·c++
一位正在转型AI全栈的前端工程师2 小时前
AI 全栈学习之旅 -Week 11:从 CLI 到浏览器:用 FastAPI、SSE 和 Vue 3 做一个可审核的 ReAct Agent
前端·python
10share2 小时前
我为什么用 React 重写了一个 VitePress
前端·react.js