问题标签 [jdb]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
5070 浏览

java - 调试从 Tomcat (JSP) 运行的 Java 程序

我不知道为什么我从来没有发现自己必须使用调试器来单步调试我的程序并查看发生了什么,可能是因为我习惯于使用解释性语言,例如 PHP,在其中添加调试代码变得非常容易(print_r) 并实时查看更改。

然而,有了这个新的 Java 项目,我觉得我必须学习正确的调试方法。

所以这个不是我写的程序在Tomcat上运行并使用基本的JSP。问题是当我尝试访问一个特定的 JSP 页面时,它会抛出一个异常并给我所发生的事情的堆栈跟踪:

我将如何使用 JDB 之类的工具逐步完成我的程序?我不能真正单步执行一个特定的类,因为我需要模仿我的 JSP 正在做什么......我想通过命令行来做这件事,而不使用 IDE。

0 投票
1 回答
1298 浏览

android - 使用命令行 jdb 调试 Android 应用程序

我正在配置 emacs 来调试 android 应用程序。我的问题是因为我将 jdb 附加到 DDMS 我无法设置正确的类路径(当我尝试同时设置 -classpath 和 -attach 时 jdb 不会启动)。所以 jdb 实际上是盲目的——没有类的入口点,没有交互式调试。将调试器附加到 ddms 时如何指定类路径?

0 投票
4 回答
13690 浏览

java - “无法连接到远程 VM”将 jdb 连接到 Windows 上的 android 模拟器

我一直在尝试将 jdb 连接到 android 模拟器一段时间,并且反复遇到:

不太好。解决这个问题的最佳方法是什么?我在 Windows 7 64 位上运行。

0 投票
3 回答
2899 浏览

java - 调试 .jar 文件包含 main 方法的 Java 项目

对于游戏树的课堂练习,我必须编写与.jar文件一起使用的代码。我以前没有以这种方式使用过 Java。我的 Eclipse 项目树如下所示:

项目树

要运行代码,有人告诉我在命令行上执行此操作:

java -jar VierOpEenRij.jar Mens spel.speler.Random 5 5

如何调试此代码?我尝试过修改 Eclipse 的调试配置,也尝试过执行jdb -jar VierOpEenRij.jar Mens spel.speler.Random 5 5,但我无法找到启动调试器的方法。

当.jar文件包含 main 方法时,如何调试我的代码?

0 投票
1 回答
1742 浏览

java - 带有 emacs 的 jdb 和 jde(名称未知)

main[1] 打印我的变量

com.sun.tools.example.debug.expr.ParseException:名称未知:myVariable

我的变量 = 空

关于为什么会发生这种情况的任何猜测?我可以像以前那样放置断点,但我无法访问变量。

0 投票
1 回答
1135 浏览

java - 检查jdb中方法的返回值

假设在 jdb 中我在代码中的以下位置:

如何转储将要返回的对象(或原语)的值?在返回之前必须将返回值存储在局部变量中似乎很痛苦,这样我才能看到将要返回的内容。

实际上,我想在 jdb 中执行 gdb 链接中描述的操作:

如何检查 GDB 中函数的返回值?

0 投票
2 回答
466 浏览

java - 通过 bjdwp 在 Linux 上调试黑莓

我已经走上了使用 Linux 进行黑莓开发的漫长道路。目前这意味着:

bb-ant-tools - 用于构建

net_rim_api.jar - 以及来自 Eclipse 插件 1.3.0 的其他黑莓好东西

preverify - 来自 J2ME SDK 或 WTK,我忘记了哪个

Retrotranslator - 用于将一些 Java 5 硬塞到 J2ME 中

bjavaloader - 来自 Barry,用于将应用程序推送到我的设备

我离人迹罕至的路很远,我已经放弃了 Eclipse 来启动,因为我更喜欢 vim。剩下的最后一块拼图是:

Linux 上的黑莓调试

我也尝试过来自 Barry 项目的 bjdwp。当我通过 jdp 附加时,我可以连接并查看一些控制台输出。但是尝试使用 jdp 功能似乎失败了。在 Eclipse 中作为远程应用程序进行调试会导致以下错误:

在抛出“Barry::Error”的实例后调用终止

what():控制器:不支持请求的模式

最好的方法是在 Virtualbox 中的 Windows 中设置 jdwp 并从 Linux 远程连接到它吗?

0 投票
4 回答
2375 浏览

java - 相当于 JDB 中的 GDB 'start'?

我对JDB有点困惑。相当擅长使用 GDB,我知道用于控制执行的各种简单命令,即 start、run、cont、step、stepi、break 等,但有许多(在我看来)不寻常的差异.

如果我想启动一个应用程序(而不是运行它,所以我可以从头开始执行它),本能地,我输入jdb MyApp然后start. 我收到无法识别的命令错误。阅读 JDB 帮助并没有给我任何关于启动命令或其等效命令的指示。所以,我试试step——那也不管用;我被告知我需要使用run命令启动 Java VM!

显然,它必须是可能的,因为step帮助中有一个命令解释。所以,我想也许我可以输入run并很快按下ctrl+c以中断它,因为在 GDB 中,这会停止执行。相反,它只是退出了 JDB。

我试过用谷歌搜索这个,但无济于事。我希望我不是完全盲目的愚蠢!

Rant over:你到底是如何开始在 JDB 中运行一个 java 应用程序以便从一开始就可以单步执行它的?

0 投票
2 回答
1052 浏览

java - 你如何为 Java 运行 DDD?

我在这里学习本教程

并在我输入后弹出一个显示“无法访问类测试”的弹出窗口

0 投票
1 回答
628 浏览

java - JDB面临的问题 - 断点未命中

我有以下代码:

我设置了三个断点:调用 f1(),在 f1() 中,在 finally 块的 if 语句中。

似乎 finally 块中的断点没有被命中。如果在 f1() 中击中断点后我使用下一个命令,我确实最终会通过 finally 块。

此外,如果我在 finally 块的两行都设置断点,则断点确实是第一个。

不确定这是否是由于 JDB 中的错误。有人可以告诉我这是一个已知问题还是我遗漏了什么?

我在 Linux 上使用 JDK 6。