gpt4 book ai didi

java - Eclipse 不会因我的插件而退出

转载 作者:行者123 更新时间:2023-11-30 05:17:10 25 4
gpt4 key购买 nike

我正在开发自己的 Eclipse 插件,并遇到了一个非常奇怪的行为。在某些非常特殊的情况下,当我关闭工作台时,Eclipse 不会退出。它会一直挂着,直到我终止该进程。通过 PDE 运行以及作为常规安装运行时会发生这种情况。

确实很难提供更多细节,而且我知道这是一个非常普遍的问题。然而,我想知道是否有人遇到过这种行为并可以分享解决方案。

谢谢。兹维基

PS。我在工作台退出后附加所有正在运行的线程的堆栈跟踪。也许会弹出一些东西。此跟踪是通过在 Debug模式下运行 IDE、在卡住后挂起它并复制所有线程树来实现的。

Test1 [Eclipse Application] 
org.eclipse.equinox.launcher.Main at localhost:54840 (Suspended)
Daemon System Thread [Finalizer] (Suspended)
Object.wait(long) line: not available [native method]
ReferenceQueue<T>.remove(long) line: 120
ReferenceQueue<T>.remove() line: 136
Finalizer$FinalizerThread.run() line: 159
Daemon System Thread [Reference Handler] (Suspended)
Object.wait(long) line: not available [native method]
Reference$Lock(Object).wait() line: 474
Reference$ReferenceHandler.run() line: 116
Thread [main] (Suspended)
Daemon System Thread [Signal Dispatcher] (Suspended)
Daemon Thread [Thread-0] (Suspended)
OS.CFRunLoopRunInMode(int, double, boolean) line: not available [native method]
Display.sleep() line: 3902
IDEWorkbenchAdvisor(WorkbenchAdvisor).eventLoopIdle(Display) line: 364
Workbench.runEventLoop(Window$IExceptionHandler, Display) line: 2383
Workbench.runUI() line: 2346
Workbench.access$4(Workbench) line: 2198
Workbench$5.run() line: 493
Realm.runWithDefault(Realm, Runnable) line: 288
Workbench.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 488
PlatformUI.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 149
IDEApplication.start(IApplicationContext) line: 113
EclipseAppHandle.run(Object) line: 193
EclipseAppLauncher.runApplication(Object) line: 110
EclipseAppLauncher.start(Object) line: 79
EclipseStarter.run(Object) line: 386
EclipseStarter.run(String[], Runnable) line: 179
NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method]
NativeMethodAccessorImpl.invoke(Object, Object[]) line: 39
DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25
Method.invoke(Object, Object...) line: 585
Main.invokeFramework(String[], URL[]) line: 549
Main.basicRun(String[]) line: 504
Main.run(String[]) line: 1236
Main.main(String[]) line: 1212
Daemon Thread [State Data Manager] (Suspended)
Thread.sleep(long) line: not available [native method]
StateManager.run() line: 297
Thread.run() line: 613
Daemon Thread [Framework Event Dispatcher] (Suspended)
Object.wait(long) line: not available [native method]
EventManager$EventThread(Object).wait() line: 474
EventManager$EventThread.getNextEvent() line: 377
EventManager$EventThread.run() line: 317
Daemon Thread [Start Level Event Dispatcher] (Suspended)
Object.wait(long) line: not available [native method]
EventManager$EventThread(Object).wait() line: 474
EventManager$EventThread.getNextEvent() line: 377
EventManager$EventThread.run() line: 317
Thread [Worker-0] (Suspended)
Object.wait(long) line: not available [native method]
WorkerPool.sleep(long) line: 185
WorkerPool.startJob(Worker) line: 217
Worker.run() line: 51
Daemon Thread [Java indexing] (Suspended)
Object.wait(long) line: not available [native method]
IndexManager(Object).wait() line: 474
IndexManager(JobManager).run() line: 371
Thread.run() line: 613
Thread [Worker-1] (Suspended)
Object.wait(long) line: not available [native method]
WorkerPool.sleep(long) line: 185
WorkerPool.startJob(Worker) line: 217
Worker.run() line: 51
Thread [Worker-2] (Suspended)
Object.wait(long) line: not available [native method]
WorkerPool.sleep(long) line: 185
WorkerPool.startJob(Worker) line: 217
Worker.run() line: 51

最佳答案

抱歉打扰大家...有问题了。

我的问题很简单:我的一个操作处理程序在 Dispose 方法中引发了异常。这会导致整个工作区挂起。

关于java - Eclipse 不会因我的插件而退出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/618716/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com