Flutter,Visual Studio 代码项目卡在 Analyzing
Posted
技术标签:
【中文标题】Flutter,Visual Studio 代码项目卡在 Analyzing【英文标题】:Flutter, Visual studio code project stuck on Analyzing 【发布时间】:2020-07-13 12:56:36 【问题描述】:我有一个颤振项目,我可以使用 git 终端和颤振命令毫无问题地运行:flutter run
但是我最近在尝试使用 Visual Studio 代码打开同一个项目时遇到了这个问题,
一旦 vs code 启动,它会尝试分析项目中的 dart 代码错误。该过程通常需要相对较短的时间(一分钟左右),但现在需要很长时间,我不知道为什么。
我试图在我的项目上做flutter clean
,但它没有解决它。也试过flutter pub get
,还是没有解决问题。这很奇怪,因为只有在使用 Visual Studio 代码打开该特定项目时才会发生这种情况。
这是flutter doctor -v
命令的日志:
C:\Users\Rami>flutter doctor -v
[√] Flutter (Channel beta, v1.15.17, on Microsoft Windows [Version 10.0.18363.720], locale en-US)
• Flutter version 1.15.17 at D:\Flutter\sdk
• Framework revision 2294d75bfa (4 weeks ago), 2020-03-07 00:28:38 +0900
• Engine revision 5aff311948
• Dart version 2.8.0 (build 2.8.0-dev.12.0 9983424a3c)
[√] android toolchain - develop for Android devices (Android SDK version 28.0.3)
• Android SDK at D:\Android\sdk
• Android NDK location not configured (optional; useful for native profiling support)
• Platform android-28, build-tools 28.0.3
• ANDROID_SDK_ROOT = D:\Android\sdk
• Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
• All Android licenses accepted.
[√] Chrome - develop for the web
• Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
[√] Android Studio (version 3.6)
• Android Studio at C:\Program Files\Android\Android Studio
• Flutter plugin version 44.0.2
• Dart plugin version 192.7761
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
[√] VS Code (version 1.43.2)
• VS Code at C:\Users\Rami\AppData\Local\Programs\Microsoft VS Code
• Flutter extension version 3.8.1
[√] Connected device (3 available)
• SM A520F • 192.168.8.80:5555 • android-arm64 • Android 8.0.0 (API 26)
• Chrome • chrome • web-javascript • Google Chrome 80.0.3987.162
• Web Server • web-server • web-javascript • Flutter Tools
• No issues found!
感谢您的反馈, 谢谢
【问题讨论】:
【参考方案1】:我像here 一样解决了它。在您的设置中启用dart.previewLsp
。
Ctrl + , 并输入dart.previewLsp
。
当我编写嵌套泛型类型时也会出现问题。例如。 Future<Either<X, Y>>
.
我尽可能避免这种情况。您只需要从另一行复制类型或使用 sn-p。或者从内到外编码。
【讨论】:
【参考方案2】:我知道这为时已晚,但我相信这有助于任何遇到此问题的人。在我的情况下,这是由于语法错误。我尝试评论最近编辑的文件并重新启动 VSCode
然后这个烦人的分析事情停止了。
【讨论】:
天哪,由于分析器没有突出显示它,我没有发现语法错误,谢谢!【参考方案3】:确保您没有声明任何嵌套泛型,并且没有像我的一样使用您的 var name 完成该行
分析无限时间。 ?
Future<List<>>
现在我们很好?
Future<List<int>> getMyListOfInt();
【讨论】:
【参考方案4】:升级到最新的 Flutter 版本 (1.20.0) 后发生在我身上。关闭并重新启动 VSCode 为我修复了它。
【讨论】:
【参考方案5】:您可以按照以下步骤操作。这对我有用
【讨论】:
【参考方案6】:打开 Analyzer 日志并查看其慢速/卡住的文件,有时该文件存在分析器未正确处理的语法错误 (how to turn analyzer logs on)。 日志中的第一列是您的系统自纪元以来的毫秒数。
同时启用@loki 提到的dart.previewLsp
也会有所帮助。
另外,请仔细检查您的内存是否不足,分析器可能非常饥饿!
【讨论】:
【参考方案7】:这个问题应该和缓存有关。 您可以尝试在 ~/library/caches 此处删除(以防万一)所有与 Visual Studio 缓存相关的文件夹,然后重新启动 VS,您应该一切顺利。
这是 VS 缓存文件夹的命名约定。
com.microsoft.VSCode com.microsoft.VSCode.ShipIt【讨论】:
以上是关于Flutter,Visual Studio 代码项目卡在 Analyzing的主要内容,如果未能解决你的问题,请参考以下文章
Flutter App:如何从 Visual Studio 代码构建 testflight
如何防止 Visual Studio Code Flutter/Dart Editor 格式化新行/换行代码?
Flutter开发中,如何在Visual Studio代码调试控制台打印长字符串?