无法在 VS Code 中调试颤振飞镖代码,未验证断点错误

Posted

技术标签:

【中文标题】无法在 VS Code 中调试颤振飞镖代码,未验证断点错误【英文标题】:Unable to debug flutter dart code in VS Code, Unverified Breakpoint error 【发布时间】:2020-09-23 20:51:52 【问题描述】:

代码没有运行的时候,可以加断点(红色圆形圆圈),但是一进入调试模式,就变成了未经验证的断点(灰色空心圆圈),根本不起作用.但是,相同的项目在其他系统上运行良好。 我不知道问题是什么或解决方案是什么。 我已经多次尝试重新安装 Flutter SDK,并且在 SOF 和 GitHub 上浏览了很多关于此的链接,但没有一个足够有用。

环境 - VS 代码, 颤振版本:1.17.2

颤振医生 -

[✓] Flutter (Channel stable, v1.17.2, on Mac OS X 10.15.3 19D76, locale en-GB)
[✗] android toolchain - develop for Android devices
    ✗ Unable to locate Android SDK.
      Install Android Studio from: https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK components.
      (or visit https://flutter.dev/docs/get-started/install/macos#android-setup for detailed instructions).
      If the Android SDK has been installed to a custom location, set ANDROID_SDK_ROOT to that location.
      You may also want to add it to your PATH environment variable.

[✓] Xcode - develop for ios and macOS (Xcode 11.3.1)
[!] Android Studio (not installed)
[✓] VS Code (version 1.45.1)
[✓] Connected device (1 available)

! Doctor found issues in 2 categories.

我的 launch.json 文件 -


    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        
            "name": "Flutter: Run all Tests",
            "type": "dart",
            "request": "launch",
            "program": "./test/"
        ,
        
            "name": "Dart: Run all Tests",
            "type": "dart",
            "request": "launch",
            "program": "./test/"
        ,
        
            "name": "Dart",
            "type": "dart",
            "request": "launch",
            "program": "bin/main.dart"
        ,
    
        "name": "Dart: Attach to Process",
        "type": "dart",
        "request": "attach"
    ,
        
            "name": "Flutter",
            "request": "launch",
            "type": "dart"
        
    ]

另外,如果您知道 VSCode 和 Android Studio for Flutter 的任何好的替代品,请分享。

【问题讨论】:

你确定你的 main.dart 路径吗? 喜欢launch.json文件中的路径吗? (“程序”:“bin/main.dart”)。我尝试将“bin”更改为“lib”(按照某些网站上的步骤),但没有运气。 您能分享一下您的解决方案结构的屏幕截图,特别是 main.dart 吗? 对不起,我不明白,你说的解决方案结构是什么意思? 例如如果您使用的是 VSCode,默认情况下,这将是左侧所谓的资源管理器面板上的应用程序文件和文件夹的结构。我需要它的屏幕截图,您可以在其中展开所有文件夹以使 main.dart 文件可见 【参考方案1】:

就我而言,父母文件夹包含特殊字符 (#):

.../#Projects/my_project/

去掉#,调试顺利:

.../Projects/my_project/

【讨论】:

【参考方案2】:

我遇到了类似的问题。我通过完全卸载并重新安装 Vscode + 删除数据来解决。 See here

【讨论】:

【参考方案3】:

对于flutter-web,我不得不在web/index.html 中改回<base href="/">。自定义 href 会导致无法调试的项目。

【讨论】:

【参考方案4】:

对于在尝试调试外部库或 sdk 代码时遇到此问题的任何人:确保选中 设置下的“Dart:调试外部库”和“Dart:调试 Sdk 库” > 扩展 > Dart & Flutter 如here 所述。

您还可以将以下内容添加到您的settings.json

"dart.debugExternalLibraries": true,
"dart.debugSdkLibraries": true,

【讨论】:

【参考方案5】:

我在调试某些 dart 文件时遇到了同样的问题,但其他文件我可以。

然后我意识到当我调用另一个文件时会发生这种情况,这个技巧会有所帮助:

不用打字:

import '../form/productdetail.dart';

我替换为:

import 'package:myapp/form/productdetail.dart';

它有帮助。

【讨论】:

【参考方案6】:

我来自 mac,总是在 windows 上使用 fn + f5,这意味着在没有调试的情况下启动,这是我的错误。

【讨论】:

lmao,我喜欢这正是我的错误……早上的咖啡还没打到我:)【参考方案7】:

遇到了同样的问题,通过停止当前活动会话并单击“运行”并选择“开始调试”来解决。这对我有用。

【讨论】:

【参考方案8】:

导航到运行选项卡并从下拉菜单中选择Dart & Flutter,最后点击播放按钮。

【讨论】:

【参考方案9】:
 "version": "0.2.0",
  "configurations": [
    
      "name": "Flutter",
      "request": "launch",
      "type": "dart",
      "flutterMode": "debug"
    
  ]

这是我的 launch.json 文件...将“flutterMode”从配置文件更改为调试解决了问题...如果您没有此行添加它可能会有所帮助。

【讨论】:

【参考方案10】:

单击 VS 代码顶部菜单上的“运行”并选择“启用所有断点”对我有用。虽然您必须先放置断点。

您也可以尝试放置断点并保存您的代码,然后让模拟器运行并关闭并重新启动您的 vs code IDE 并在调试的情况下运行应用程序。

【讨论】:

在调试之前设置断点后选择Enable All Breakpoints 选项对我来说很有效。谢谢!【参考方案11】:

我也遇到了同样的问题,我正在寻找确切的原因,但删除 launch.json 文件对我有用。

【讨论】:

【参考方案12】:

您的 main.dart 文件的路径未正确指定。 所以在这个区块中

    "name": "Dart",
    "type": "dart",
    "request": "launch",
    "program": "bin/main.dart"

请使用

"program": "lib/main.dart"

【讨论】:

以上是关于无法在 VS Code 中调试颤振飞镖代码,未验证断点错误的主要内容,如果未能解决你的问题,请参考以下文章

如何在 VS Code 中调试颤振 build_runner 构建?

为啥我的 Contact.dart 没有运行? (颤振、飞镖、VS 代码)

dart:ui:1:错误:未找到:dart:ui。颤振/飞镖:

VSCode 飞镖分析器停止识别颤振/飞镖代码

我无法在 VS 代码中运行和调试颤振应用程序,每当我尝试运行它时,我都会收到以下错误 [重复]

在 Windows 10 上使用 VS Code 在 iphone 上调试颤振