通常我通过在终端输入jdb来开始调试java程序,然后它将进入调试模式,然后我可以输入类似于"stop at com.android.contacts.dirtyImport.DirtyImportManager:95“to to jdb to stop at jdb”这样的内容。
现在的问题是:如何将这两个cmds输入合并为一个。类似于"jdb < stop at com.android.contacts.dirtyImport.DirtyImportManager:95".我有这个要求的原因是,我想让vim自动生成调试信息并进入调试模式,停止制作断点。
我正在尝试调试Android中的本机cpp文件,并遵循了这个中的讨论。我认为我完成了所有步骤,并进行了本机代码调试。首先调试Android应用程序。然后启动ndk-gdb-py。当我启动C++本机调试时,我得到的错误为
Error in final launch sequence
Failed to execute MI command:
-exec-run
Error message from debugger back end:
Don't know how to run. Try "help target".
Don't know how to run.
为了想办法绕过Sphinx 4 (Java语音识别引擎),我尝试使用发行版中包含的演示,将它修改为我想要做的事情(演示的名称是Aligner)。我遇到了问题,希望在命令行中使用jdb进行调试。我阅读了给的文档,但是它是有限的,并且没有解决我的问题的方法,简单地说,如下所示:
我是这样调用jdb的:
jdb Aligner (项目的主类的名称)。
设置如下所示的断点:stop at Aligner:33
我得到的输出(在命令行上):
Deferring breakpoint Aligner:33.
It will be set after the class is loaded.
在
我正在努力学习jdb。我有一个maven项目。我尝试用jdb调试它,当我使用list命令时,我看不到任何源代码。我得到了这样的信息:
main[1] list
Source file not found: App.java
那么,我应该如何使用maven编译一个项目,以便以后可以使用jdb对其进行调试,并且可以看到源代码?
我想使用命令行在我的设备(Nexus One --不是模拟器)上调试我的Android应用程序。
我对如何结合使用jdb和android.os.Debug.waitForDebugger来设置断点感到困惑。
假设我将以下代码放入我的主活动onCreate中
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
android.os.Debug.waitForDebugger();
i
当错误发生时,我的java代码中会抛出异常。然后,我使用jdb运行代码,这样当异常发生时,我可以看到代码所处的状态并进行调试。对于我抛出的所有异常,我放入了一个有用的字符串消息。但是,当jdb捕获到异常时,它不会同时打印该字符串。如何打印此字符串?
我在谷歌上搜索和阅读了文档,但我不知道怎么做。
如果我有测试类:
public class Test{
public static void main(String[] args){
throw new IllegalArgumentException("How do I view this string throu
我在集群生产服务器中遇到了一个问题,我设法将一个实例与用户隔离开来,所以我可以使用它进行调试,我正在使用jdb进行调试。很长的介绍结束。我的问题是我需要将代码调试到lambda表达式中。
public void method(){
this.privateField = Util.methodCall(); // Here the breakpoint works
Clazz.staticMethod(() -> {
Integer x = 1;
Long y = 2;
y = x * y; // I need a Break
我正在尝试从java程序中调试一个java类。我创建了一个简单的类来测试。这是我的类hello.java,它位于C:\Users\madhawax\Desktop\beaufify\debugging文件夹中。
我的问题是我无法找回这个角色
VM Started: Set deferred breakpoint Hello.main
...
当我从java代码运行jdb时,当我从命令行手动运行jdb时,我可以看到它。
为什么我只得到实际产出的一部分?我怎么才能解决这个问题?
这是我的Hello.java课程:
public class Hello {
public static voi
我正在使用JDB来调试Scala代码,到目前为止,它大部分工作正常。然而,一个特定的断点永远不会命中,它是在Scala对象的方法上设置的(在方法进入时,而不是在特定的行号上)。
当我单步执行代码时,我可以看到该方法正在进入,但无论我尝试多少次,都不会命中断点。我设置的每个其他断点,包括同一项目中代码上的断点,都会被命中。
$ jdb -version
This is jdb version 1.6 (Java SE version 1.6.0_23)
我用$后缀的类名和不用$后缀的类名设置了断点。
这里会有什么问题呢?
那个类上没有其他同名的方法,所以即使我没有告诉JDB方法的参数类型,这也不