记录一次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"
    }
  }
}
相关推荐
zqx_78 分钟前
随记 前端框架React的初步认识
前端·react.js·前端框架
惜.己25 分钟前
javaScript基础(8个案例+代码+效果图)
开发语言·前端·javascript·vscode·css3·html5
什么鬼昵称1 小时前
Pikachu-csrf-CSRF(get)
前端·csrf
长天一色1 小时前
【ECMAScript 从入门到进阶教程】第三部分:高级主题(高级函数与范式,元编程,正则表达式,性能优化)
服务器·开发语言·前端·javascript·性能优化·ecmascript
NiNg_1_2341 小时前
npm、yarn、pnpm之间的区别
前端·npm·node.js
秋殇与星河1 小时前
CSS总结
前端·css
NiNg_1_2341 小时前
Vue3 Pinia持久化存储
开发语言·javascript·ecmascript
读心悦1 小时前
如何在 Axios 中封装事件中心EventEmitter
javascript·http
BigYe程普2 小时前
我开发了一个出海全栈SaaS工具,还写了一套全栈开发教程
开发语言·前端·chrome·chatgpt·reactjs·个人开发
神之王楠2 小时前
如何通过js加载css和html
javascript·css·html