Пока мы познакомились лишь с различными расширениями, предоставляемыми утилитой readme. Рассмотрим общее определение модуля утилиты readme.
Модуль утилиты readme определяется в верхней части файла plugin.xml.
<?xml version="1.0" encoding="UTF-8"?> <?eclipse version="3.0"?> <plugin id="org.eclipse.ui.examples.readmetool" name="%Plugin.name" version="2.1.0" provider-name="%Plugin.providerName" class="org.eclipse.ui.examples.readmetool.ReadmePlugin"> <runtime> <library name="readmetool.jar"/> </runtime> <requires> <import plugin="org.eclipse.ui"/> <import plugin="org.eclipse.core.resources"/> <import plugin="org.eclipse.core.runtime.compatibility"/> <import plugin="org.eclipse.ui.views"/> <import plugin="org.eclipse.ui.ide"/> <import plugin="org.eclipse.jface.text"/> <import plugin="org.eclipse.text"/> <import plugin="org.eclipse.ui.workbench.texteditor"/> <import plugin="org.eclipse.ui.editors"/> </requires> ...
Определение модуля включает в себя имя, ИД, версию и имя провайдера модуля. Мы уже встречались с большинством из этих параметров в модуле "hello world". Утилита readme также задает специализированный класс модулей ReadmePlugin.
Также задается имя jar-файла. Имена файлов, заданные в файле plugin.xml, указаны относительно каталога модуля, таким образом, jar-файл утилиты readme должен быть расположен непосредственно в каталоге модуля.
Элемент requires сообщает платформе о зависимостях утилиты readme. Модули пользовательского интерфейса рабочей среды перечислены как обязательные модули вместе с различными модулями ядра, jface и текстовыми модулями.
Класс ReadmePlugin представляет модуль утилиты readme и управляет жизненным циклом модуля. Как мы видели в примере "Hello World", необязательно указывать класс модуля. За вас это сделает платформа. В этом случае наш модуль должен инициализировать при запуске связанные с пользовательским интерфейсом данные. Класс платформы AbstractUIPlugin задает структуру для управления ресурсами пользовательского интерфейса и расширяется с помощью ReadmePlugin.
AbstractUIPlugin использует общие методы запуска и отключения для управления изображениями, параметрами окон и хранением свойств во время существования модуля. Мы рассмотрим особенности класса ReadmePlugin при обсуждении работы с окнами и параметрами.