Я создал плагин в eclipse с поддержкой API cdt, плагин выполняет некоторый рефакторинг кода, и он работает нормально, я хочу расширить этот плагин для работы в режиме без головы, я создал точку входа, которая реализует IApplication, и этоработает нормально, чтобы ввести метод запуска, проблема заключается в применении изменений кода, когда я пытаюсь изменить код
Change c = rewriter.rewriteAST();
try {
c.perform(new NullProgressMonitor());
} catch (CoreException e) {
logger.error("Faild to persist changes",e);
}
, это дает мне исключение говорит Caused by: java.lang.IllegalStateException: Workbench has not been created yet.
, но это делает рефакторинг кода, мой вопрос делаетChange.perform является частью модуля пользовательского интерфейса, и как избежать этого исключения?Ссылка трассировки полного стека: https://pastebin.com/iiKzvisQ