IEditorPart.getEditorInput () возвращает IEditorInput, представляющий ввод редактора. Если активный редактор использует PathEditorInput в качестве входных данных, вам нужно либо связать его, либо реорганизовать код, чтобы не использовать пример входных данных редактора rcp - упомянутый вами PathEditorInput является примером rcp.
Например, вы можете использовать один из стандартных редакторов, таких как org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitEditor или org.eclipse.ui.editors.text.TextEditor и org.eclipse.ui.part.FileEditorInput .
Вы создали свой проект с примером мастера? Если это так, это объясняет, откуда взялся пример использования.
Что касается получения текста, следующий фрагмент получит редактор, если он является экземпляром AbstractTextEditor, а затем извлечет содержимое из документа.
Обратите внимание, что в этом вызове есть некоторые нежелательные доступы. Если вы зарегистрируетесь в качестве прослушивателя на SelectionService , вы сможете отслеживать активное выделение и избежать необходимости запрашивать рабочую среду для активного редактора.
AbstractTextEditor part = (AbstractTextEditor) Workbench.getInstance()
.getActiveWorkbenchWindow().getActivePage().getActiveEditor()
.getAdapter(AbstractTextEditor.class);
if (part != null) {
IDocument document = part.getDocumentProvider().getDocument(
part.getEditorInput());
String content = document.get();
//do something with the text
}