如何将 Java 对象的当前值打印到控制台,而不是在 Eclipse 中调试时挂起线程?

How to print Java object's current value to console, instead of suspend thread while debug in the Eclipse?

有时您只需要检查应用程序中的某些值是如何随时间变化的。通常,您可以使用日志,但想象一下您的应用程序已经在服务器上并使整个 CI/CD 循环,只是添加一些临时日志语句是多余的。或者变量在 3-rd 方库中,你不想修补它。

当然,您可以(远程)调试您的应用程序,但是挂起线程并一次又一次地检查几个变量可能是个问题。

开箱即用的 JetBrains IntelliJ IDEA 中提供了此类功能 - tracepoint,但是 Eclipse 呢?

幸运的是,您可以使用 Eclipse 实现“虚拟日志记录”。

要做到:

  1. 开始调试会话
  2. 将条件断点添加到要添加日志语句的行
  3. 将日志语句写入断点条件并return false;

就是这样。应用程序在通过断点时不会挂起,但会写入输出变量的值