Я разработал плагин Eclipse. Eclipse имеет функцию, которая заключается в том, что если рабочая среда закрыта с некоторыми открытыми редакторами, то при следующем запуске Eclipse все редакторы, открытые в предыдущем сеансе, остаются в открытом состоянии.
Мое требование - закрыть все открытые редакторы на основе предыдущего сеанса во время запуска Eclipse. В одном из разработанных классов плагинов я добавил следующий фрагмент кода
PlatformUI.getWorkbench().getActiveWorkbenchWindow();
IWorkbenchWindow[] windows = PlatformUI.getWorkbench().getWorkbenchWindows();
for (IWorkbenchWindow iWorkbenchWindow : windows) {
if (iWorkbenchWindow.getActivePage() != null) {
break;
}
iWorkbenchWindow.close();
}
Этот код закрывает редакторы во время запуска. но также выдает исключение:
"Unable to read workbench state. Workbench UI layout will be reset.
java.lang.NullPointerException".
Прошу сообщить мне, где я не прав.