如何调试龙目岛对象

2022-09-04 20:50:40

有谁知道在使用Eclipse或IntelliJ IDEA时如何在下面设置断点?Person.toString()

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.ToString;

@ToString
@AllArgsConstructor
@Data
public class Person {
    private String lastName;
    private String firstName;
}

编辑:

如果可能,我只想在调用时才停止。toString()


答案 1

你问的是Eclipse和IntelliJ IDEA,答案非常不同:

  • 在 Eclipse 中,右键单击“成员”视图中的方法,然后使用“切换方法断点”。
  • 在IDEA中,没有解决方案,但是有很好的解决方法(见下文),并且@PeterVerhas的评论中描述了一个解决方案。

嗯,如果可能的话,我不想更改源代码。

你肯定在使用版本控制,所以没有什么会出错,对吧?如果没有,那么请尽快开始使用它,因为我无法想象没有它的任何工作。

尽管有几个步骤,但解决方法非常简单:

  1. 首先,使用版本控制来确保你不会丢失当前状态(我通常只是使用git-gui中的“Rescan”和“Stage Changed”将所有内容向下移动)。
  2. 执行“重构” - > “Delombok” - > “@ToString”(仅限IDEA)以及要调试的任何其他更改。
  3. 调试。
  4. 撤消编辑器中的更改(如果可能)。
  5. 最后,使用版本控制来查看工作树的状态(git-gui 中的“Rescan”),并可能还原不需要的更改(git-gui 中的“提交”->“还原更改”)和/或验证工作树的状态。

除了调试(通常需要相当长的时间)之外,每个步骤都需要一到两秒钟。因此,几乎没有任何开销。相信我,我每天做几次临时代码更改。


答案 2

推荐