【问题标题】:Eclipse Debugging Method CallsEclipse 调试方法调用
【发布时间】:2011-04-13 22:24:26
【问题描述】:

我有两个版本的项目旨在实现相同的效果。一个是较旧的实现,而第二个是更新、修改和(希望)增强的版本。问题是他们没有给出相同的输出。是否可以选择让 Eclipse 打印出程序正在执行的所有操作的列表,以便我可以比较它们(使用某种合并/差异工具)并找出它们的分歧点?

这是在 Java 中,使用 JBuilder 2008,它或多或少与 Eclipse 相同。

【问题讨论】:

    标签: java eclipse debugging trace jbuilder


    【解决方案1】:

    我不熟悉 JBuilder。在 Eclipse 中,您可以右键单击项目并单击调试以启动调试器。然后,您可以在要开始调试的位置设置断点并逐步执行。这是网络应用程序还是独立应用程序?如果它是在服务器上运行的 Web 应用程序,那么您可能需要进行远程调试。

    这里有一个 link 和另一个 link 用于在 Eclipse 中设置调试的教程。

    【讨论】:

    • 我正在寻找更多的庞大而全面的程序流程列表。我精通 Eclipse 调试以理解断点的概念,但我试图找出这两个版本在相当大的程序中的分歧之处。如果我有所有发生的方法调用的列表,我可以“区分”它们并更快地找到这一点。
    • 这让我觉得您正在寻找两个版本代码的差异。在这种情况下,如果代码处于颠覆状态,您可以使用 subclipse->compare with 实用程序。这行得通吗?
    【解决方案2】:

    最简单的方法可能是使用 AOP(面向方面​​编程),它允许您以非线性方式添加代码。请参阅这个关于日志记录的问题,我希望它非常接近您的需要,以及 AOP 方法有多简单。

    Traditional logging vs AOP logging

    @After("execution(* *.doSomething())")
        public void logAfter(JoinPoint jp){
            logger.debug("...");
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-22
      相关资源
      最近更新 更多