Eclipse plugin PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage()中的NullPointerException
返回线程“thread-3”java.lang.NullPointerExceptionµ中的异常。Eclipse plugin PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage()中的NullPointerException,eclipse-plugin,Eclipse Plugin,返回线程“thread-3”java.lang.NullPointerExceptionµ中的异常。 我该怎么办?添加一些空检查,工作台可能没有活动窗口,如果工作台尚未启动(例如createAndRunWorkbench()尚未调用),PlatformUI.getWorkbench也可能抛出非法状态异常 如果线程没有在活动窗口中运行,PlatformUI.getWorkbench().getActiveWorkbenchWindow()将返回“null”。 您必须将代码包装在显示器中,例如: I
我该怎么办?添加一些空检查,工作台可能没有活动窗口,如果工作台尚未启动(例如createAndRunWorkbench()尚未调用),PlatformUI.getWorkbench也可能抛出非法状态异常
如果线程没有在活动窗口中运行,PlatformUI.getWorkbench().getActiveWorkbenchWindow()将返回“null”。 您必须将代码包装在显示器中,例如:
IWorkbenchWindow window = PlatformUI.getWorkbench().getInstance()
.getActiveWorkbenchWindow();
if(workbenchWindow != null) {
IWorkbenchPage page = window .getActivePage();
}
我有一个工作要做。尽管这是一个老帖子
Display.getDefault().asyncExec(new Runnable() {
@Override
public void run() {
IWorkbenchWindow iw = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
}
});
非常感谢你。这对我很有帮助。非常好,谢谢,它帮了我。
Display.getDefault().asyncExec(new Runnable() {
@Override
public void run() {
IWorkbenchWindow iw = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
}
});
IWorkbench wb = PlatformUI.getWorkbench();
if (wb.getWorkbenchWindowCount() == 1) {
try{
wb.getWorkbenchWindows()[0].getActivePage().getPerspective();
}
catch(NullPointerException e)
{
Logger.log(e);
}
}