记录MacOS更新到 12.3,electron打包ENOENT. spawn /usr/bin/python ENOENT错误

2,456 阅读2分钟

有几天没用公司mac电脑打包,结果发现拿过来打包出现了这个错误(最下面有解决办法,中间是解决办法的尝试)

错误.png 最开始并不知道mac12.3移除了python2.7,以为是新写的部分代码出现了问题,于是执行了最早一版的代码来排除问题结果还是有问题。反复几次打包还是这个问题,去到所报错的node_modules下面查看源码找原因,结果发现并没有找到所报错的文件... 随后在网络上查阅资料发现了issuehunt.io/r/1kc/razer… 大概意思也就是说mac12.3移除了python2的依赖导致的问题,但是文中并没有提到解决。

安装python2

随后想着没有python2.7就装一个呗,对于mac系统也不是很熟悉跟着百度一顿瞎敲大概就是装一个homebrew然后再去装python2.7,结果由于我这边网络不是很好下载的速度太慢了为几十KB

123.png (期间设置过http,https代理git代理)还是没多少提升还是慢,后来在网上找了个镜像wddsss.com/main/displa… 快到起飞 589.png 跟着文章一顿敲下载完就可以看到我这个截图一样的东西,不得不说镜像还是快。 然后想着这一下装python2.7没得跑了吧 当我 brew install python2 999.png

结果eeeee,那就等一下吧。(期间尝试过找其他办法去解决下载慢的问题)

48594596.png 结果 这是什么情况怎么一下没看失败了,再来一次(结果还是一样)这个时候我看着提示的报错一顿搞还是不行 结果又在知乎看到了这个

sdad.png 里面下面有提到直接去官方下载python2.7安装(我为什么当时没有想到,而是跟着百度到的资料下载各种东西去操作,总结还是mac方面太不懂了)www.python.org/ 进去选择要下载的

4564156156.png 下载完之后本地输入python可以看到 6415541415.png 还是不行这是为什么呢? 可以看到打包的报错是Error code:ENOENT . spawn /usr/bin/python ENOENT 其实就很简单了 我本地有python2.7,还有个mac12.3自带的python 不知道为什么electron打包默认一直在找这个路径(期间尝试过更改源码,指向python2.7等手段还有一些覆盖路径的尝试也没有起到作用)最后在一篇文章找到灵感!

github.com/electron-us… 里面明确说明提到了这个问题 最后解决了 总结其实一共就俩步走了太多的弯路了。 1.官网下载python2.7 2.设置python_path export PYTHON_PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin/python"\ 然后再从新执行electron打包就成功了