【问题标题】:Unable to debug flutter dart code in VS Code, Unverified Breakpoint error无法在 VS Code 中调试颤振飞镖代码,未验证断点错误
【发布时间】: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 文件可见

标签: flutter debugging dart visual-studio-code


【解决方案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 & Flutterhere 所述。

        您还可以将以下内容添加到您的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"
                    

                    【讨论】:

                      猜你喜欢
                      • 1970-01-01
                      • 2021-02-12
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 2019-02-28
                      • 2019-06-26
                      • 2018-11-21
                      • 1970-01-01
                      相关资源
                      最近更新 更多