最近正好有些需求,需要使用Electron来开发客户端。因为最近一直在用tauri,我把我这的默认包管理换成了pnpm。
所以就顺手使用pnpm来初始化Electron项目。
然后我运行项目时,提示我 Electron uninstall。
 提示我 Electron uninstall 错误
提示我 Electron uninstall 错误我检查了下package.json,并重新安装下也不行。
当我再次使用 pnpm i 安装依赖时,我看到这句话。
 pnpm 提示信息
pnpm 提示信息ok,尝试输入 pnpm approve-builds 并执行,会提示选择需要编译的依赖,用空格键选中,在输入 yes 确认即可。
 pnpm 开始编译依赖
pnpm 开始编译依赖pnpm 会在 package.json 文件中添加onlyBuiltDependencies 配置节
 pnpm 添加的配置
pnpm 添加的配置neverBuiltDependencies,来允许所有不在其中的脚本运行好的,问题解决了。
那么,为什么会导致这个问题发生呢?
原因是从pnpm10开始,为了安全默认在安装依赖时不运行相关build脚本。
而Electron在安装时需要运行脚本来构建二进制文件。
 pnpm approve-builds 授权构建脚本
pnpm approve-builds 授权构建脚本这时候需要手动授权下运行构建脚本。
