问题再现
最近在学习Flutter开发,在一次配置环境的过程中遇到了一个比较尴尬的坑,不过最终还是把这个坑给填掉了,再此进行一些分享,希望后来者遇到同样的问题时可以轻松的解决。
从下图中可以看出,前面几条flutter doctor
命令执行的时候总是未响应,通过各种方式执行都是一样的结果,但是dart命令是能够正常执行。起初还以为是环境变量配置的有问题,但是后来把环境变量改了又改,并且把flutter包换了又换,但是现象一直未得到解决。
解决问题
寻求网络帮助
遇到这种难题第一时间想到的便是百度,但是各种关键词搜索了一番之后,竟然没有找到一篇关于这种现象的解决方案,大部分都是flutter命令使用教程,如用flutter doctor
去查看环境是否配置完成,或者通过flutter doctor --android-licenses
命令去接受Android SDK的一些协议许可。
后来,又尝试了必应和Google搜索,也无果之后,放弃了通过网络寻求帮助解决的方法。
大胆试错
由于只有flutter的命令执行的时候无响应,所以起初认为是程序包有问题。于是通过再次解压程序压缩包和配置环境变量之后,问题仍然存在。
随后,判断了不是程序包的问题之后开始去监控应用进程的变化。
- 任务管理器
从图中可以发现在任务管理器的详细信息栏里看到了很多个git正在执行,并且很卡。
- 性能
从性能栏页面底部的打开资源监视器进入到资源监控页面
- 资源监视器
然后在网络一栏看到了多个git和一个git-remote-http在运行,并且git-remote-http的地址指向了**https://ec2-37-112--117-223.ap-southeast-01.compute.amazonaws.com**。这里的图片是后来截的,所以看不到那个程序和地址了。
根源
到这里,可以猜到很可能是由于git导致的问题,但是先前安装过flutter都没有问题,这一次重装系统之后就突然有问题了。所以就尝试着把git软件给删除并重新安装,然后奇迹的发现了flutter doctor
命令可以正常执行了。
于是又倒退回去复现了一下问题,发现是安装git的时候选项选的有问题导致了和flutter冲突。
如下图,选择了Use Window’s default console window的选项来安装git软件之后,git bash是直接用的window的命令窗口来执行命令。正是因为选中了这个选项所以导致flutter命令无响应的问题。
所以如果你出现了和我一样的问题可以尝试重新安装git软件,并在这一步选择Use MinTTY的选项来安装。
完美填坑
经过不断的试错,终于将这个问题解决了,flutter命令也可以正常执行了。如图,通过VSCode开发工具可以正常的执行flutter create hello_flutter
创建新的flutter项目。
写在最后
遇到问题要大胆试错,只要不断的尝试就会离问题的起因更近,最后找到解决问题的办法。如果你的flutter遇到了相同的问题而又不是由于git导致的话,也可以通过类似的方式不断试错并找到最终的解决方案。也欢迎各位同行可以在评论里分享自己解决问题的方法。
乐于分享,共同进步。