问题标签 [jdi]

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 投票
3 回答
5761 浏览

java - 为什么在使用方法入口调试时,被调试的程序速度变慢了这么多?

我正在使用 jdi 接口创建调试器,当我使用 MethodEntryRequests 启用方法条目跟踪时,被调试程序的速度降低了数十倍。我已将主线程的过滤器和挂起策略设置为 SUSPEND_EVENT_THREAD。Classfilter 是有限的,如果我打印任何收到的事件,它不会显示超过几十个,所以它不应该收到太多。我在本地调试,并在调试后的 java 程序中有以下类型的命令行:

-Xdebug -Xrunjdwp:transport=dt_socket,suspend=y,server=y,address=1337

0 投票
1 回答
618 浏览

java - 带有调试接口问题的Java插件开发

您好,我正在尝试开发一个使用 Java 调试接口的 Eclipse 插件(在 Eclipse 中),但出现以下错误:

访问限制:由于所需库 /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/classes.jar 的限制,无法访问类型 VirtualMachine

在非插件开发项目中使用调试接口似乎工作正常。我认为这与插件依赖项有关,但我不确定如何修复它。

0 投票
3 回答
3229 浏览

java - Ant 可以同时启动两个 java 应用程序吗?

我目前正在开发一个“调试器”Java 应用程序,它使用 JDI 连接到已经运行的“目标”Java 应用程序。有没有办法让 Ant 启动我的目标应用程序,然后在第一个应用程序仍在运行时启动我的“调试器”?

是的,我知道我可以开发 JDI 应用程序来启动目标程序,但这不是我现在想要的。

0 投票
6 回答
24296 浏览

java - JDI 线程评估遇到问题

我正在为 Java 运行 Eclipse。我创建了一个 XML 文件的 DOM 版本。现在我想更改文件中元素的属性。我调用了一个方法,该方法调用了控制 DOM 的类中的方法,并且在调试时出现了一个对话框,提示“JDI 线程评估遇到问题。异常处理异步线程队列”。

我是 Java 的相对新手,没有遇到过这样的错误,我不知道是什么原因造成的。

如果有人对问题的原因和/或解决方法有任何建议......

非常感谢!

0 投票
1 回答
602 浏览

eclipse - 在调试过程中,如何评估调试目标VM中的一段代码?

在调试期间,例如在 Eclipse 中,可以评估观察表达式或条件断点。通常,这些是在客户端进行评估的。例如,在 Eclipse 中进行调试时,是 Eclipse 本身而不是调试目标 VM 来评估这些表达式。这可能非常昂贵,尤其是在条件断点的情况下,因为调试 VM(即 Eclipse)需要在每个断点命中时变为活动状态,即使条件评估为假。

我现在的问题是调试协议是否允许它改为在调试目标 VM 中评估此类表达式或条件断点,以便目标 VM 仅在表达式/条件真正评估为 TRUE 时通知调试 VM。

0 投票
2 回答
1181 浏览

java - Java 访问局部变量名

我目前正在编写一个程序,我想在程序执行期间访问局部变量的变量名并将它们从外部传递出去。我知道 Java 将在编译期间转储局部变量名称,除非在调试模式下编译。

环顾一番后,似乎 JDI/JPDA 是这种工作的出路。假设ref指的是 a ThreadReference,以下是我迄今为止所拥有的:

两个问题:

  1. 我在正确的轨道上,还是有更好的方法来做到这一点?
  2. 如何获取ThreadReferenceto 设置为refLocatableEvent似乎是我需要的,但是任何人都可以提供如何使用它的示例吗?

提前谢谢了!

0 投票
1 回答
849 浏览

java - 为 Java 调试器接口实现不同的层

Location 类的 Java Debugger Interface 文档中,有一段讨论了位置的“层”。我一直在寻找更多关于如何实现新层(例如,Scala 或 JRuby)的详细信息,但我没有找到太多。任何人都可以对这个话题有所了解吗?

0 投票
1 回答
831 浏览

java - ObjectReference underlying object in JDI and JPDA

Very specifically, in JDI and JPDA context, I have the following questions:

  • Why ObjectReference does not expose its underlying object? Is it based on some specification? Are all implementations such as Eclipse Debug Project the same that do not expose the underlying object?

  • Considering the situation that you have the uniqueID() from ObjectReference, is there any way to resolve the underlying object from JVM?

  • If no to the previous question, then what is the best way to resolve the underlying object? I should add that I am familiar with how Value's can be obtained from StackFrame information, but I really need the object reference not the internal values or structure of the fields.

0 投票
1 回答
271 浏览

java - JDI/JPDA 事件过滤

在 JDI 中,有一个 API 可以从 JPDA 使用的 JVM 中已处理的事件中排除事件。这是使用以下方法完成的:

  1. addExclusionFilter(String)排除某些模式;例如addExclusionFilter("java.*")
  2. addClassFilter(String)包括一些模式;例如addClassFilter("java.util.*")

现在,我两个都需要。我需要排除来自的所有事件,"java.*"但我需要接收来自"java.util.Iterator".

另外,请注意,例如java.util.Iterator是由java.util.AbstractList. 我们如何接收此类事件java.util.Iterator

当我使用这两种方法时,我实际上不再接收事件了。你知道怎么做吗?提前致谢。

0 投票
3 回答
6805 浏览

debugging - 期间发生内部错误:“JDI 事件调度”java.lang.NullPointerException

我有我的 java 小程序代码,我正在尝试使用 eclipse Indigo EE 进行调试。我正在尝试使用调试配置和端口进行远程调试。当我尝试执行应用程序时,它总是给出一条错误消息,

在“JDI Event Dispatch”java.lang.NullPointerException 期间发生内部错误。

并且控制不会在断点处停止。

请帮忙。

问候, KSAT