- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
当我尝试在调试器中启动我的代码时出现以下错误。
EventDispatchThread.run() line: not available [local variables unavailable]
代码非常大,我不能在这里发布,但无论如何这里有一些细节:
这条语句似乎崩溃了,我无法使用调试器进入构造函数:
Satellite satellite = new Satellite();
当我在此行上放置一个断点并尝试进入构造函数或跳过时,我得到与上述相同的错误。
以下是 Satellite 类实现的部分内容:
package tags;
import main.*;
import xml.*;
public class Satellite extends XMLElement {
public static final String[] ATTRIBUTES = {
"XmlFileVersion",
"SatelliteName",
"xmlns:xsi=@xmlns_xsi",
"xsi:noNamespaceSchemaLocation=@xsi_noNamespaceSchemaLocation"
};
public Satellite() {
super(ATTRIBUTES);
setTopLevelElement();
setAttribute("XmlFileVersion",ValueCenter.Satellite_XmlFileVersion());
setAttribute("SatelliteName",ValueCenter.Satellite_SatelliteName());
addElement(new SubSystemList());
}
}
我将问题定位在 addElement(new SubSystemList());
行的某处。我在这里添加了一个断点,然后再次尝试介入或跳过,现在我得到了一个 ClassNotFoundException
。调试光标跳转到“找不到源”的空窗口。已写入,但源代码是 100% 可用的,我也得到了相应的 .class 文件。另一件事是 Eclipse IDE 在语法检查时不会抛出任何错误。
我不明白这个。是什么导致了这些错误?为什么我不能使用调试器遍历方法调用?
我已经为 Java 开发人员更新了 Eclipse Helios SR1,并在我的电脑上安装了最新的 Java 版本。
我知道代码在这里的任何地方都有一个无限循环,因为如果我在没有调试器的情况下运行它,我会得到一个 StackOverflowError
异常。但无论如何,难道不应该可以通过代码进行调试,调查真正的问题吗?为什么调试器会因非调试器运行以外的其他错误或异常而崩溃?
顺便说一句:只有一个线程和顺序执行。
希望有人能帮忙。
编辑 1:
一些额外的信息。我的工作区有两个项目。其中一个是带有卫星和其他程序的主程序。在另一个项目中,我有许多支持类,如 XMLElement。这种结构适用于许多类。
顺便说一句:我可以进入 XMLElement.setAttribute 方法,但不能进入 XMLElement.addElement。
另一个奇怪的是,Satellite 与主类在同一个项目中,但也无法进入构造函数。
也许这有帮助?
最佳答案
在 Eclipse 中:右键单击项目并选择 Properties
。
以下是您必须更改的设置:
此外,使用 Run > Run Configurations ...
找到您的运行配置,选择 Source
选项卡并确保当前项目在源列表中。如果没有,请单击 Add... > Java Project ...
关于Java 错误 : EventDispatchThread. run() 行:不可用 [局部变量不可用],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5080912/
所以我试图显示一个图像(ball),我最终将通过用户输入来控制它。要知道,图像只是使用线程的 sleep 方法每隔一段时间显示一次。 我创建了 2 个类,一个扩展了 JPanel,另一个扩展了 JFr
我们在运行应用程序结束时收到此错误。我在谷歌搜索但不知道是什么原因导致这个错误以及这意味着什么。该怎么办以及如何解决? 我什至不知道是什么引发了这个异常...... Exception breakpo
这是我不明白的设计决定。 Android 和 JME 都遵循启动应用程序的线程是 UI 线程的策略,您要注意将资源消耗的东西卸载到另一个线程。 另一方面,在 Swing 中,您将 EventQueue
我使用 JEditorPane 作为“橡皮图章”将 HTML 文本呈现为 PDF。我需要文本以特定宽度换行,并且需要在文本后面应用白色“突出显示”。因此,我在 PDF 渲染线程中创建一个 JEdito
我是 Swing 的新手,正在 Eclipse 中制作一个非常基本的事件处理程序。这是我写的代码: public class SwingDemo2 { JLabel jl; public SwingD
当我尝试在调试器中启动我的代码时出现以下错误。 EventDispatchThread.run() line: not available [local variables unavailable]
不久前,我们向应用程序添加了一些代码来检测并尝试从 Swing EDT 死锁中恢复,因此用户至少可以保存他们的文件(最好不要出现死锁,但是......) 。在 Java 1.6 中,这很容易。检测 E
当 dumpStackTrace 的第一个元素位于 java.awt.EventDispatchThread.run 时,为什么 isEventDispatchThread() 返回 false?
这是我在使用 Eclipse 进行调试时遇到的一个小烦恼。选中“未捕获的异常时暂停执行”后,调试器通常会在引发异常的位置暂停线程。然而,事件调度线程上的异常会导致它在 EventDispatchThr
我是一名优秀的程序员,十分优秀!