Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 开放源代码的替代方案;Intellitrace“;_Java_Visual Studio_Open Source_Intellitrace - Fatal编程技术网

Java 开放源代码的替代方案;Intellitrace“;

Java 开放源代码的替代方案;Intellitrace“;,java,visual-studio,open-source,intellitrace,Java,Visual Studio,Open Source,Intellitrace,微软最近宣布了“Intellitrace”,这是VS2010 IMHO的杀手级功能 基本上,它记录了程序运行的一些指令(特别是函数调用),并允许您轻松地查看执行日志 开源工具有类似的特性吗?特别地,对于Java来说,在Eclipse集成中拥有这样一个功能将是一件好事。GDB7.0提供了一个名为ProcessRecord的功能。但是它缺少gui 它允许以下操作: Program received signal SIGSEGV, Segmentation fault. 0x00401150 in m

微软最近宣布了“Intellitrace”,这是VS2010 IMHO的杀手级功能

基本上,它记录了程序运行的一些指令(特别是函数调用),并允许您轻松地查看执行日志


开源工具有类似的特性吗?特别地,对于Java来说,在Eclipse集成中拥有这样一个功能将是一件好事。

GDB7.0
提供了一个名为
ProcessRecord
的功能。但是它缺少
gui

它允许以下操作:

Program received signal SIGSEGV, Segmentation fault.
0x00401150 in main () at try.c:3
3       printf("%d\n",*x);
(gdb) p x
$1 = 0x0
(gdb) watch x
Watchpoint 1: x
(gdb) reverse-continue
#...find out who was the last one to touch x

这有时被称为“时间旅行调试”,因为它使您能够“及时后退”并检查程序的状态。一个快速的谷歌搜索出现了关于eclipse对类似东西的支持(显然是从2006年开始的!)

编辑:


正如Elazar在评论中指出的,eclipse工具用于基于C的开发,而不是java。然而,它看起来像是Java的临时调试器。这看起来有点像一个死气沉沉的项目,这有点令人惊讶。

您可以自己使用AOP框架来破解它,例如-日志记录是最常提到的方面之一。

我当然有偏见,但您可能想看看它只适用于CDT,不幸的是,这意味着没有Java支持。它是基于我提到的
gdb
记录功能吗?eclipsecon.org链接已断开。不幸的是,我使用的是Java 6。这与“时间旅行”无关——这与调试其他人提交错误时在机器上发生的事情有关——你的QA可以将.ITrace文件附加到他们提交的错误上,你可以一步一步地看代码,看看到底发生了什么。Intellitrace和多线程应用程序一起工作吗?允许在时间上来回回放每一条指令,包括跨多个线程?如果可以的话,这确实是一件大事。如果不能,它只是另一个时间旅行调试器。尚未对其进行测试,但会说:“摘要页面为我提供了有关IntelliTrace文件包含内容的大量信息。在页面顶部,我可以看到应用程序中线程的时间线视图。”。我告诉你,微软将凭借其产品的质量重新获得垄断地位。开发人员将从Java转向C#,C#自然会将客户吸引到WinMo7,将服务器吸引到IIS等@wizadofodds and BTW,是否有一个成熟的Java时间旅行调试器框架?IntelliTrace确实适用于多线程应用程序。IntelliTrace不会记录程序运行的所有指令。关于记录内容的更多信息,请看以下内容:我同意,如果人们能够负担得起,这将是一个杀手级功能。最终,它可能定价超过了更多的开发人员工具包向现有代码库添加类似功能有多容易?这应该很容易,但请参阅AspectJ手册。Chron很有用,但它不是开源的,甚至对开源项目来说也不是免费的!Chronon现在对开源项目是免费的: