Flutter 踩了个大坑。
问题描述:在Flutter工程下,项目能够正常编译,运行。
在Android工程下:运行报错,报错很混乱,关键信息是Too many open files。修改系统增加打开的文件数后,发现还是一样。借了灵台一台mac来编就又正常。非常之头大,不过至少我能确定的是,代码是没问题的。这种情况下,当然打包也失败了。
在IOS工程下:也坑了。项目可以正常运行,但打包出错。看错误应该是编译AOT的时候一些文件信息除草了。看日志build 包是OK了。
书库:问题看起来是如此的神奇。本来我以为是因为flutter在native项目下构建打开了太多的文件超出了系统的打开文件数量的限制。然而,使用ulimit -n 2048将最大打开文件数从256增加到了2048.效果然并卵,然后我尝试了以下各种神操作…
解决过程:
1、删掉gradle缓存
2、删掉Flutter sdk缓存
3、卸载Android Studio重装
以上方法都不行。
**
终极办法:后面改了gradle的编辑环境:plugin改成3.5.0+ gradle版本从5.6.2降低到5.4.1 Android项目可以正常运行,打包了。🙄无脑解决。
这个方法是我无意中各种尝试发现解决的,网上也找不遇到答案哈哈。
补充一下,为了不再翻车,plugin的版本这里最好跟flutter sdk中设置的版本一致,毕竟gradle不是它家的