2009年2月23日星期一

JDev_016:使用HotSwap功能Debug应用

开发运行环境:JDeveloper 11.1.2.3

1. 使用JDeveloper调试Java程序 非常简单,只要右键.java,选择Debug就可以了。

 2. 红色箭头指示当前到达的断点行。
3. 点击Step Over按钮,会到达下一条语句。
可以看到Console中,已经输出了一条信息:0 woof Kate
 C:\Oracle\Java\jdk1.6.0_25\bin\javaw.exe -server -agentlib:jdwp=transport=dt_socket,server=y,address=50191 -Dcom.sun.xml.bind.v2.bytecode.ClassTailor.noOptimize=true -classpath C:\Oracle\JDevRuntime\mywork\MyFirstApplication\.adf;C:\Oracle\JDevRuntime\mywork\MyFirstApplication\MyProject\classes;C:\Oracle\JDev11.1.2.3\modules\javax.servlet_1.0.0.0_2-5.jar;C:\Oracle\JDev11.1.2.3\modules\javax.jsp_1.2.0.0_2-1.jar;C:\Oracle\JDev11.1.2.3\modules\glassfish.el_1.0.0.0_2-1.jar;C:\Oracle\JDev11.1.2.3\oracle_common\modules\oracle.jsf_2.0\jsf-api.jar;C:\Oracle\JDev11.1.2.3\oracle_common\modules\oracle.jsf_2.0\jsf-impl.jar;C:\Oracle\JDev11.1.2.3\modules\glassfish.jstl_1.2.0.1.jar -Djavax.net.ssl.trustStore=C:\Users\pmma\AppData\Local\Temp\trustStore582542103810661307.jks myproject.Dog
Listening for transport dt_socket at address: 50191
Debugger connected to local process.
Source breakpoint: Dog.java:24
0 woof Kate


4. 点击Smart Tab,点击count变量,修改它的值=2。


5. 点击Resume按钮,会到达下一个断点处。
可以看到Console中,直接输出了:
Process exited.
Debugger disconnected from local process.
这是因为设置count=2后,经过++操作,count=3,因此跳出了for循环,没有输出count=1和2的语句。


Project 下载:MyFirstApplication.7z

参考文献:
1. http://docs.oracle.com/cd/E18941_01/tutorials/jdtut_11r2_50/jdtut_11r2_50.html

没有评论: