java AWT EventQqueue AccessControlException
我将自己的测试事件队列推到系统事件队列上。在TestEQueue中,我用一个对super的调用重载了dispatchEvent方法。调度事件
TestEQueue mytestqueue = new TestEQueue();
Toolkit.getDefaultToolkit().getSystemEventQueue().push(TestEQueue);
但由于某些原因,在新测试队列中的调度失败,并出现AccessControlException。其中,同一事件在主程序中成功调度,无需测试队列
两个队列将在同一线程组中运行,这怎么可能呢?如何调试此问题?这是一个非常大的测试代码库的一部分,所以我无法复制功能代码。这和安全经理有关吗
# 1 楼答案
注意^{} 取代了现有的^{} ;它不会添加新队列。我认为你问题的前提可能不正确。另见本Q&A
# 2 楼答案
没人知道你是怎么建立你的
own test event queue over the System eventqueue
的,也许你错过了invokeAndWait
有用的infos和here
我只是好奇,如果你的测试以成功告终,那么请用
SwingUtilities.invokeAndWait
测试一下,如果有一些差异(什么都不等待),我将你的线程标记为通知任何更改:-)此代码应用于测试目的