2010-09-17 136 views
0

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

这是在Java中使用JBuilder 2008,它几乎与Eclipse相同。

回答

0

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

这里是一个link和另一个link到在Eclipse中设置的调试教程。

+0

我正在寻找更多的程序流程的一个巨大的和全面的清单。我对Eclipse的调试足够了解,以理解断点的概念,但我试图追踪这两个版本在相当大的程序中的差异。如果我有一个所有发生的方法调用的列表,我可以“比较”它们,并且更快地找到这个点。 – Mike 2010-09-17 21:25:04

+0

这让我觉得你正在寻找代码的两个版本的差异。在这种情况下,如果代码在subversion中,你可以使用subclipse-> compare with utility。这会起作用吗? – CoolBeans 2010-09-17 21:32:23

0

最简单的方法是使用AOP(Aspect Oriented Programming),它允许你以非线性的方式添加代码。看到这个关于日志记录的问题,我希望它非常接近你所需要的,以及AOP方法的简单性。

Traditional logging vs AOP logging

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