解决electron-build打包后运行app报错:cannot find module xxx

现象:

解决electron-build打包后运行app报错:cannot find module xxx_第1张图片

 关于这个问题查了很多资料,也问了chatgpt都没有找到答案。

最后只能靠自己了。

于是冷静下来回想一下细节。突然发现了一个特别点。

eletron-builder打包时,强制要求eletron-builder和eletron必须都放在devDependencies

否则:打包不能成功!注意了,这个是突破的关键点!

这意味着:dev开发依赖不会被electron-builder打包进去! 

然后再看看我的打包入口文件,我这个项目是vue项目,但是所有api以独立路由的方式注册进来,并不是简单代理方式,api部分跟项目主体是分离独立的

解决electron-build打包后运行app报错:cannot find module xxx_第2张图片

所以,入口文件也是通过express跑起来的, 一部分serve加载vue打包成的dist静态文件,一部分接收api注册进来的路由。

那么问题来了,入口文件也会导入依赖。

解决electron-build打包后运行app报错:cannot find module xxx_第3张图片

这里的依赖就不能放在 devDependencies里面,因为electron不会打包进去。

解决办法:electron入口文件中引入的依赖必须放在Dependencies,不能放在开发依赖devDependencies,否则electron-builder不会打包进去

你可能感兴趣的:(electron)