一、错误复现过程
- 使用electron-vite创建项目
- 然后使用
pnpm i
安装依赖 - 使用electron-builder打包:
npm run build:win
,出现爆错
x c:\Usersl12621\AppData\Local\electron-builder\cache\nsis\nsis-3.0.4.1\Bin\makensis.exe process failed ERR ELECTRON BUILDER CANNOT EXECUTE Exit code: 1 Output: Command line defined: "APP ID=com.electron.hello'
(其中报错下方还有一些node_modules报错)
二、可能原因与解决方案
网上有众多此类报错的可能,比如
- 可能是ico图标的位置格式设置不对
- 可能是pnpm与electron-builder的设置问题(此处是我的项目发生的问题)
- 也有可能是国内网络问题导致的文件下载失败
针对问题2:pnpm与electron-builder的设置问题可以手动修改.npmrc文件
,添加如下两行
node-linker=hoisted
public-hoist-pattern=*
我的.npmrc
文件完整配置:(问题3可以参考这个文件的镜像配置)
prefix=D:\01tools\npm
registry=https://registry.npmmirror.com/
disturl=https://registry.npmmirror.com/-/binary/node/
electron_mirror=https://registry.npmmirror.com/-/binary/electron/
electron_builder_binaries_mirror=https://registry.npmmirror.com/-/binary/electron-builder-binaries/
node-linker=hoisted
public-hoist-pattern=*
针对问题3也可以直接复制下面的包
https://download.youkuaiyun.com/download/weixin_42960907/89892099
打包成功
参考github解决方案: https://github.com/electron-userland/electron-builder/issues/6289