Electron Forge打包应用报错:无法找到client-only模块
Electron Forge打包React应用报错的解决方法
排查步骤及解决方案
1. 检查打包忽略规则
Electron Forge会默认读取.gitignore或.npmignore的配置,如果这些文件里误加了@headlessui相关的忽略规则,打包时会把依赖排除。
- 打开项目根目录的
.gitignore和.npmignore,删掉所有涉及@headlessui的条目 - 保存后重新执行
pnpm run make
2. 强制指定打包包含的依赖
在package.json的config.forge字段里添加packagerConfig,明确让Forge包含@headlessui/react:
"config": { "forge": { "packagerConfig": { "includeModules": { "@headlessui/react": true } }, // 保留你原有的其他Forge配置 } }
3. 彻底清理依赖缓存
pnpm的缓存可能残留异常文件,执行以下命令完全重置依赖:
pnpm store prune rm -rf node_modules rm pnpm-lock.yaml pnpm install pnpm run make
4. 同步依赖版本兼容性
确认@headlessui/react和你的React、Electron版本匹配:
- 查看
package.json里的react、react-dom版本,确保和@headlessui/react的要求一致 - 版本不兼容的话,安装最新稳定版的
@headlessui/react:
pnpm add @headlessui/react@latest
5. 更新Electron Forge
报错来自Forge依赖的flora-colossus模块,更新Forge到最新版可能修复解析问题:
pnpm update electron-forge @electron-forge/cli @electron-forge/maker-dmg @electron-forge/maker-zip
(根据你使用的maker工具调整后面的包名)
内容的提问来源于stack exchange,提问作者Danuja
相关产品推荐
相关产品推荐

