如何从命令行与 dart 调试器交互?

yba*_*kos 4 debugging dart

假设您有一个简单的命令行 Dart 程序,其中调用了debugger()断点。例如:

main() {
  print('hello');
  debugger();
  print('goodbye');
}
Run Code Online (Sandbox Code Playgroud)

当我运行程序时:

dart main.dart
Run Code Online (Sandbox Code Playgroud)

控制台显示输出直到断点并在控制台中暂停。但是,我没有看到调试器的任何输出,并且无法与调试器交互。如何从命令行与调试器交互?

jul*_*101 5

我不确定是否有用于处理调试的命令行工具,但如果您使用--observeget 例如以下输出运行应用程序:

dart --observe program.dart 
Observatory listening on http://127.0.0.1:8181/t8BNcN7MCEo=/
hello
vm-service: isolate (208832671) 'main' has no debugger attached and is paused.  Connect to Observatory at http://127.0.0.1:8181/t8BNcN7MCEo=/ to debug.
Run Code Online (Sandbox Code Playgroud)

在 Web 前端中,您可以通过单击“在 main (program.dart:7:1) [debug] 处通过断点暂停”处的链接来访问调试器,您可以在其中访问所有常用的调试实用程序,例如步骤。