美文网首页
Electron打包后运行出错2

Electron打包后运行出错2

作者: 路过麦田 | 来源:发表于2018-08-01 14:18 被阅读132次

    之前的App打包后出现过一次不能运行的情况
    https://www.jianshu.com/p/44493f722cef
    当时的情形很诡异,但最终还是解决了,这次又出现了不能运行的情况:

    Async/Await crash: assertion env->async_hooks_init_function().IsEmpty() failed
    

    在electron1.7.8及以下版本运行是没问题的,一旦升级到1.8.x后就会出现上面这个问题,还有就是1.7.8版本在最新的Ubuntu18.04上是不能显示托盘图标的,网上也没有很好的方案,好在electron后续版本是改掉了这个bug的,看来升级electron是不可避免的,但是上面的crash也相当严重啊,不解决就不能运行。。。
    网上也搜索一些同样的问题,貌似也没有说出个所以然来

    Cant start electron app #11861

    在所有的module都没变的情况下,升级electron到高版本就不能运行,那肯定就是某个module出现了兼容性的问题,因为我把官方的electron-quick-start下载下来运行,是没问题的,所以可以肯定是我App中依赖的某个module出现了兼容性问题,经过无聊而又耗时的挨个排查package.json中dependencies的选项后,发现了unzip,这就和上面链接中的问题一致了,

    image.png
    原因找到了,就是graceful-fs这个库导致的,要么升级graceful-fs要么降版本,而我则是直接去掉了unzip这个module,可用可不用的,就直接去掉,减少出现问题的几率
    dependencies中去掉unzip,并删除node_modules文件夹,然后再次安装所有依赖,并打包,安装,运行,一路下去,没有再出现这个问题了

    以后不知道还要在electron上踩多少坑,但是该来的总会来的,躲也躲不掉,迎面而上吧!

    相关文章

      网友评论

          本文标题:Electron打包后运行出错2

          本文链接:https://www.haomeiwen.com/subject/jkzlvftx.html