转载:http://blog.csdn.net/kingquake21/archive/2010/03/11/5369827.aspx
1. ** 命令列表 **
2. connectors - 列出此 VM 中可用的连接器和传送器
3.
4. run [类 [参数]] - 开始执行应用程序的主类
5.
6. threads [线程组] - 列出线程
7. thread <线程 ID> - 设置默认线程
8. suspend [线程 ID] - 暂停线程(默认为所有线程)
9. resume [线程 ID] - 恢复线程(默认为所有线程)
10. 其中 [<线程 ID> | all] - 转储线程的堆栈
11. 其中 [<线程 ID> | all] - 转储线程的堆栈,以及 pc 信息
12. up [n 帧] - 向上移动线程的堆栈
13. down [n 帧] - 向下移动线程的堆栈
14. kill <线程 ID> <表达式> - 中止具有给定的异常对象的线程
15. interrupt <线程 ID> - 中断线程
16.
17. print <表达式> - 输出表达式的值
18. dump <表达式> - 输出所有对象信息
19. eval <表达式> - 输出表达式的值(与 print 相同)
20. set <lvalue> = <表达式> - 为字段/变量/数组元素指定新值
21. locals - 输出当前堆栈帧中的所有局部变量
22.
23. classes - 列出当前已知的类
24. class <类 ID> - 显示已命名的类的详细信息
25. methods <类 ID> - 列出类的方法
26. fields <类 ID> - 列出类的字段
27.
28. threadgroups - 列出线程组
29. threadgroup <名称> - 设置当前线程组
30.
31. stop in <类 ID>.<方法>[(参数类型,...)]
32. - 在方法中设置断点
33. stop at <类 ID>:<行> - 在行中设置断点
34. clear <类 ID>.<方法>[(参数类型,...)]
35. - 清除方法中的断点
36. clear <类 ID>:<行> - 清除行中的断点
37. clear - 列出断点
38. catch [uncaught|caught|all] <类 ID>|<类模式>
39. - 出现指定的异常时中断
40. ignore [uncaught|caught|all] <类 ID>|<类模式>
41. -- 对于指定的异常,取消 "catch"
42. watch [access|all] <类 ID>.<字段名>
43. - 监视对字段的访问/修改
44. unwatch [access|all] <类 ID>.<字段名>
45. - 停止监视对字段的访问/修改
46. trace methods [线程] - 跟踪方法输入和退出
47. untrace methods [线程] - 停止跟踪方法输入和退出
48. step - 执行当前行
49. step up - 执行到当前方法返回到其调用程序
50. stepi - 执行当前指令
51. next - 跳过一行(跨过调用)
52. cont - 从断点处继续执行
53.
54. list [line number|method] - 输出源代码
55. use(或 sourcepath) [源文件路径]
56. - 显示或更改源路径
57. exclude [<类模式>, ...| “无”]
58. - 对于指定的类,不报告步骤或方法事件
59. classpath - 从目标 VM 输出类路径信息
60.
61. monitor <命令> - 每次程序停止时执行命令
62. monitor - 列出监视器
63. unmonitor <监视器号> - 删除监视器
64. read <文件名> - 读取并执行命令文件
65.
66. lock <表达式> - 输出对象的锁信息
67. threadlocks [线程 ID] - 输出线程的锁信息
68.
69. pop - 弹出整个堆栈,且包含当前帧
70. reenter - 与 pop 相同,但重新输入当前帧
71. redefine <类 ID> <类文件名>
72. - 重新定义类的代码
73.
74. disablegc <表达式> - 禁止对象的垃圾收集
75. enablegc <表达式> - 允许对象的垃圾收集
76.
77. !! - 重复执行最后一个命令
78. <n> <命令> - 将命令重复执行 n 次
79. help(或 ?) - 列出命令
80. version - 输出版本信息
81. exit(或 quit) - 退出调试器
82.
83. <类 ID>:带有软件包限定符的完整类名
84. <类模式>:带有前导或后缀通配符 (*) 的类名
85. <线程 ID>: "threads" 命令中报告的线程号
86. <表达式>:Java(TM) 编程语言表达式。
87. 支持大多数常见语法。
88.
89. 可以将启动命令置于 "jdb.ini" 或 ".jdbrc" 之中
90. (两者位于 user.home 或 user.dir 中)
分享到:
相关推荐
然而,Android系统的安全性机制使得直接使用JDB(Java Debugger)进行远程附加调试变得困难重重。本文将深入探讨如何解决这一问题,以便更有效地进行Android So动态调试。 首先,我们需要理解JDB在Android中的工作...
要启动JDB调试,你需要先在AndroidManifest.xml中为应用开启调试模式,设置`android:debuggable="true"`。然后通过adb连接到设备,并启动应用: ```shell adb forward tcp:8700 jdwp: ``` 这里的8700是JDB的端口号...
本文总结了 JDK 中的各种命令,包括 javac、java、javah、jdb 等,详细介绍了 JDB 调试工具的使用方法和命令列表。通过学习这些命令,可以更好地学习和使用 Java 语言。 一、JDK 命令简介 JDK 中提供了许多实用的...
1. **启动JDB调试器** 要使用JDB,你需要通过命令行启动你的Java应用程序,并附加JDB作为调试器。一般格式如下: ``` jdb -connect com.sun.jdi.CommandLineLaunch:mainClass=<your_main_class>,args= ``` 其中...
本指南将详细介绍 jdb 的基本使用方法,帮助开发人员更好地理解和掌握如何使用 jdb 进行 Java 程序的调试。 #### 二、编译 为了能够利用 jdb 进行调试,所有的 Java 代码必须使用 `-g` 标志进行编译,这会使得...
12. 异常处理:使用 `catch` 命令出现指定的异常时中断,使用 `ignore` 命令对于指定的异常取消中断。 13. 字段监视:使用 `watch` 命令监视对字段的访问/修改,使用 `unwatch` 命令停止监视对字段的访问/修改。 14....
在使用 DDD 调试程序时,需要编译被调试的程序,包括调试信息。如果要包含调试信息,编译时需要加上 -g 选项。例如,使用以下命令编译程序:gcc -g -o test test.c。 使用 DDD 调试程序可以分为多步骤。首先,需要...
启动JDB调试器时,需要提供要调试的类名,如`jdb hehe`。如果出现找不到类的错误,可能是因为类路径设置不正确,可以通过`java -classpath . hehe`来解决。当JDB成功启动并找到调试的类,可以开始设置断点,例如在`...
JDB API 用于在代码中运行Java调试器(JDB)的简单JDB API :sparkle: 介绍Java调试器(JDB)是一个简单的命令行调试器。...将命令发送到调试器,如下所示: jdb.send(COMMAND);读取输出,如下所示:
【标题】"jdbczuoye.rar"可能是一个Java Debug Bridge(JDB)相关的作业或项目压缩包,其中包含了与使用JDB调试Java应用程序相关的资料。JDB是Java Development Kit(JDK)的一部分,它提供了一个命令行工具,允许...
本文通过一个具体的案例展示了如何使用 JDB 分析工具来调试 Android 应用中的 Java 代码,尤其是关于移动安全方面的内容。通过对 HTTP 发包行为的分析以及 Android 与 JavaScript 之间的交互机制的研究,可以更深入...
当使用jdb进行动态调试连接时,如果连接成功,`android.os.Debug.isDebuggerConnected()`方法会返回true。为了防止这种情况,可以在反编译工具中搜索`isDebuggerConnected()`关键字,并将其调用处用Nop指令替换。...
JCreator则通过图形化的方式封装了这些命令,降低了调试的学习难度。 **二、如何用JCreator开始调试** 1. **创建或导入工程**:在JCreator中进行调试前,需要将源代码组织成项目(Project)。如果你只有一个Java...
它支持语法高亮和插件,例如用于调试的插件,如NppExec,可以在Notepad++内部执行编译和调试命令。 在实际开发中,熟练使用这些调试工具能够帮助开发者快速定位问题,理解代码执行流程,从而提高代码质量和开发效率...
你可以使用`step into`、`step over`和`step return`命令来逐行执行代码,分别进入方法、执行当前行并跳过子方法,以及执行完当前方法返回上一层。 3. **查看变量和表达式**:在暂停时,IDE会显示当前作用域内的...
* 使用jdb命令调试Java程序,设置断点和追踪变量。 * 了解Java程序的调试过程和常见错误处理方法。 四、Java开发的基本概念 4.1 Java SE和JDK的关系 * Java SE(Standard Edition)是Java的标准版,提供了Java...
4. **JDB (Java Debugger)**:虽然主要用于Java代码,但在联合GDB调试.so时也会用到,用于设置Java方法的断点。 以下是动态调试的基本步骤: 1. **准备环境**:确保设备已启用USB调试,并在设备上安装所需的调试...
jdb工具包含了丰富的命令,帮助您进行调试。jdb工具的功能与Sun Studio中的dbx非常相似,但jdb专门用于Java应用程序的调试。 jstat jstat是一个命令行工具,利用了JVM内建的指令对Java应用程序的资源和性能进行...
当你拥有一个或多个`.class`文件时,使用此命令启动虚拟机执行程序。例如,如果`HelloWorld.class`是已编译的程序,运行命令如下: ``` java HelloWorld ``` 3. **jar**:Java归档工具 `jar` 命令用于创建、...