electron-vite icon indicating copy to clipboard operation
electron-vite copied to clipboard

Unable to load preload script

Open flyweights opened this issue 1 year ago • 6 comments

Describe the bug

Unable to load preload script: ... Contents/Resources/app.asar/out/preload/index.js

preload/index.js

import { contextBridge } from 'electron'
import { electronAPI } from '@electron-toolkit/preload'

import { SerialPort } from 'serialport'

// Custom APIs for renderer
const api = {
  list: () => {
    return new Promise((resolve) => {
      const ports = SerialPort.list()
      resolve(ports)
    })
  }
}

就是使用 serialport 这个库,开发环境没有问题,在 Mac/M1 打包就不行了。

Electron-Vite Version

2.3.0

Electron Version

31.0.2

Vite Version

5.3.1

Validations

flyweights avatar Jul 11 '24 01:07 flyweights

将依赖安装在dep,相关查阅文档。此外不建议在preload中使用,推荐在主进程中使用

alex8088 avatar Jul 11 '24 01:07 alex8088

将依赖安装在dep,相关查阅文档。此外不建议在preload中使用,推荐在主进程中使用

依赖 已经安装在 dependencies 了

  "dependencies": {
    "@electron-toolkit/preload": "^3.0.1",
    "@electron-toolkit/utils": "^3.0.0",
    "electron-updater": "^6.1.7",
    "serialport": "^10.5.0"
  },

我去试一下,主进程 会不会?

flyweights avatar Jul 11 '24 02:07 flyweights

npm run start preview 状态下也是没有问题的,就是build 之后就有问题了,奇怪?!

flyweights avatar Jul 12 '24 02:07 flyweights

https://cn.electron-vite.org/guide/troubleshooting#%E6%8A%80%E5%B7%A7

通常 preview 命令运行正常,而打包后不正常,大概率是依赖模块未被打包进应用程序,请检查依赖模块是否安装在 dependencies中,也可能是 pnpm 问题(如果使用了的话)。

alex8088 avatar Jul 12 '24 02:07 alex8088

https://cn.electron-vite.org/guide/troubleshooting#%E6%8A%80%E5%B7%A7

通常 preview 命令运行正常,而打包后不正常,大概率是依赖模块未被打包进应用程序,请检查依赖模块是否安装在 dependencies中,也可能是 pnpm 问题(如果使用了的话)。

是没有使用的 pnpm


试了好多方法,都不行。 直接用把代码拿到 win11 上,打包是可以的。 就是 Mac/M1 ,打包不行。醉了 明天在试下换一台 Mac/M1

flyweights avatar Jul 12 '24 06:07 flyweights

后面换了一台M1电脑,就可以了,奇怪!

flyweights avatar Aug 01 '24 01:08 flyweights