我正在配置 emacs 来调试 android 应用程序。我的问题是因为我将 jdb 附加到 DDMS 我无法设置正确的类路径(当我尝试同时设置 -classpath 和 -attach 时 jdb 不会启动)。所以 jdb 实际上是盲目的——没有类的入口点,没有交互式调试。将调试器附加到 ddms 时如何指定类路径?
问问题
1298 次
1 回答
3
根据 JDB 手册页,“-classpath”在“转发到调试进程的选项”中。换句话说,它不会告诉 jdb 在哪里可以找到东西,它会告诉被调试的应用程序在哪里可以找到东西。
由于您正在连接到正在运行的进程,因此这没有任何意义。
调试进程所需的所有信息都存储在设备上的 DEX 文件中;您不需要使用 jdb 的主机端 jar/dex 文件。唯一不起作用的是“列表”,但如果你坐在 emacs 中,你可能不需要它。
我已经成功地使用 jdb 来执行各种调试任务。我最常忘记的事情是您必须指定完全限定的类名(例如 java.lang.String 而不仅仅是 String)。如果您正在这样做,但仍然失败,请在此处粘贴示例 jdb 调试会话。
于 2010-11-12T23:03:25.480 回答