如鹏网 大学生计算机学习社区

CowNew开源团队

http://www.cownew.com 邮件请联系 about521 at 163.com

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  363 随笔 :: 2 文章 :: 808 评论 :: 0 Trackbacks

这是今天早晨我和一个网友关于eclipse调试原理的聊天记录,希望对大家有帮助:
小鱼 说:
你说了解JAVA的编译机制和熟练使用调试,最好的方法是不是去阅读eclipse的源代码啊
杨中科 说:
编译机制?要了解编译机制的话最先肯定要把编译原理搞清楚呀,eclipse本身是不负责编译java代码的,它是委托给JDK去编译的,因此要了解java的编译机制肯定要去阅读jdk的源码的
杨中科 说:
不过jdk的编译器部分的源码好像没有开放
杨中科 说:
使用调试也不用去看源码,功能很简单的
小鱼 说:
是啊,我觉得eclipse的调试很有用啊,尤其是你以前讲过的那个jsp的调试,学问很深啊
杨中科 说:
原理上并不难,因为eclipse是把调试请求通过jpda协议发给jdk来完成的,eclipse本身不提供java代码的编译和调试机制
小鱼 说:
这就是实时监测虚拟机的运行状态吧
杨中科 说:
不过读懂了eclipse的java调试部分的代码你就也可以写出一个java的调试器出来
小鱼 说:
断点就是给程序一个中断是吧?
小鱼 说:
是的
杨中科 说:
不是实时检测,是一个请求、应答的模式
杨中科 说:
比如我们在java的编译器的第五行放了一个断点,那么代码调试起来以后,eclipse就告诉运行环境“请在第五行停下来”,那么运行环境就会在第五行停下来。然后你想看看i这个变量的值,eclipse就会向运行环境请求“请告诉我i等于多少”,然后运行环境就将i的值告诉eclipse,eclipse就将这个值显示给你。原理非常简单
小鱼 说:
也就是程序挂起吧?
杨中科 说:
eclipse只是充当了一个介绍人的角色
杨中科 说:
不明白程序挂起具体指的什么,不过应该就是你理解的意思
小鱼 说:
也是,一个和用户直接打交道的UI

杨中科 说:

http://www.blogjava.net/huanzhugege/

 

posted on 2007-03-07 09:13 CowNew开源团队 阅读(2473) 评论(1)  编辑  收藏

评论

# re: eclipse调试原理解惑! 2007-05-16 18:04 二手车
挺有意思的.  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: