Хотя сегодняшние IDE так же мощны, как и «борьба с зверями», вы должны знать, что независимо от того, насколько мощным является IDE, он не может предоставить все функции, которые хотят пользователи, поэтому IDE обычно предоставляют интерфейсы API для разработчиков, чтобы расширяться самостоятельно. Давайте возьмем разработку плагина в рамках Intellij Idea 12 в качестве примера, чтобы увидеть, как еще больше улучшить IDE в соответствии с потребностями разработчиков.
1. Создать проект плагина
Если в модуле SDK нет дополнительного SDK, нажмите «Новый», чтобы добавить новый SDK, и выберите место установки IntelliJ в каталоге.
Структура созданного проекта плагина очень проста, но в Meta-Inf есть дополнительный файл конфигурации плагина.xml, который будет представлен позже.
2. Пусть плагин скажет привет
2.1 Добавить компонент
В каталоге SRC вы можете увидеть, что в новом диалоговом окне перечислены три компонента, соответствующие трем уровням: приложение, проект и компонент модуля. Здесь мы выбираем компонент приложения в качестве примера, введите имя, такое как MyComponent в всплывающем окне, а затем будет создан компонент.
Затем добавьте метод Sayhello в MyComponent. Другие методы не реализованы в настоящее время. Исходный код заключается в следующем:
пакет com.cdai.plugin.rapidg; import com.intellij.openapi.components.applicationComponent; import com.intellij.openapi.ui.messages; импорт org.jetbrains.annotations.notnull;/** My Component * user: cdai * Дата: 13-11-4 * время: 10: 0.com. ApplicationComponent {public myComponent () {} public void initComponent () {// toDo: вставьте логику инициализации компонента здесь} public void issOseComponent () {// toDo: вставить логику утилизации компонентов здесь} @notnull public StringName () {return "myComponent"; } public void SayShello () {// Показать диалог с сообщениями сообщений.showMessageDialog («Hello World!», «Пример», сообщения. GetinformationIcon ()); }} 2.2 Добавить действие
Теперь вам нужно добавить действие, чтобы пользователи, которые используют наш плагин, могли нажать на плагин через меню или другие методы.
Основная задача действия - создать приложение и объект MyComponent, код заключается в следующем:
Пакет com.cdai.plugin.rapidg; import com.intellij.openapi.actionsystem.anaction; import com.intellij.openapi.actionsystem.anactionevent; импорт com.intellij.openapi.application.application; импорт com.intellij.openapi.application.application.application; Дата: 13-11-4 * Время: 10:16 AM */Public Class SayHelloAction расширяет anaction {@Override public void actionPerformed (anactionEvent e) {Приложение = ApplicationManager.getApplication (); MyComponent myComponent = Application.getComponent (myComponent.class); mycomponent.sayhello (); }}2.3 Файл конфигурации
На самом деле, создавая компонент и действие в первых двух шагах, Idea помогает нам автоматически регистрировать их в Meta-INF/plugin.xml.
Компонент приложения и действие, которые мы только что добавили, будут находиться в рамках узла <mapply-Components>, а плагин.xml в конечном итоге будет выглядеть как следующее:
<Idea-plugin version = "2"> <id> com.cdai.plugin.rapidg </id> <may> плагин Rapid Generator Cdai </name> <sers> 1.0 </version> <Vendor Email = "[email protected]" url = "http://www.yourcompany.com"> cdai </vendor </vendor </vendor </vendor </vendor </vendor </vendor </vendor </vendor </vendor </vendor </url = " Краткое описание вашего плагина здесь. <br> <mall> Большинство тегов HTML можно использовать </small>]]]> </description> <Изменение notes> <! [CDATA [добавить заметки здесь. <br> <small> Большинство тегов HTML могут быть использованы </small>]]> </изменение-ноты> <! http://confluence.jetbrains.net/display/ideadev/buildnumber+ranges для описания-> <Idea-version с тех пор Build = "107.105"/> <!-Пожалуйста, см. Как ориентироваться на различные продукты-> <!-Неправомерность, чтобы включить плагин во всех продуктах <зависит> com.intellij.modules.lang </зависит>-> <plaping-components> <!-Добавьте компоненты вашего приложения здесь-> <compontent> </componity-class> com.cdai.plugin.rapidg.mycomponent </reablection-class> <//componentmponents> <//componentmomponents> <//componentmomponents> <//componentmponents> <//componentmponents> <//componentmponents> <//componentment. <project-components> <!-- Add your project components here --> </project-components> <actions> <!-- Add your actions here --> <action id="SayHello" text="Say Hello!"> <add-to-group group-id="WindowMenu" anchor="first"/> </action> </actions> <extensions defaultExtensionNs="com.intellij"> <!-- Add your extensions here -> </extensions> </idea-plugin>
3. Беги и отладка
Откройте диалоговое окно конфигурации запуска/отладки, добавьте тип плагина и используйте ClassPath of Module, чтобы выбрать образцы проекта.
При запуске вы обнаружите, что будет запущен новый экземпляр Intellij Idea. После того, как снова пройдет процесс конфигурации запуска, вы можете увидеть, что имя плагина - это значение в <mame> в plugin.xml. Мы можем выбрать только плагин, который мы только что разработали, и игнорировать другие. Теперь мы можем запустить наш плагин через Window-> Say Hello!, И эффект в том, что появится диалоговое окно.
Интересно, что некоторые другие описания в Plugin.xml будут отображаться пользователю при сбое плагина, отчитывая проблему автору плагина.
4. Панель конфигурации плагина
Многие плагины имеют страницы конфигурации в настройках. Теперь позвольте мне кратко представить, как добавить страницу конфигурации в наш плагин.
Во -первых, давайте изменим класс MyComponent. Основным изменением является реализация дополнительного настраиваемого интерфейса. В этом интерфейсе есть метод CreateComponent. Этот метод возвращает объект Swing JComponent и будет отображаться в настройках. Кроме того, довольно удобно использовать дизайнер Swing Designer, предоставленный Idea. Чтобы не быть измененным, автоматически сгенерированный стиль и код макета не будут видны нами (в отличие от NetBeans), поэтому окончательный код очень краткий.
Это последний эффект. Панель, которую мы разработали в дизайнере, встроена справа.
5. Плагин с диалоговым окном
Общий плагин-нажать на соответствующий элемент меню плагина, и появляется диалоговое окно (например, поиск классов в рабочей области, подтверждение кода перед отправкой SVN и т. Д.). На самом деле, это очень просто. Метод реализации состоит в том, чтобы сначала создать диалоговое окно, а затем разработать макет управления в диалоговом окне в дизайнере Swing и, наконец, отобразить диалоговое окно в действии. Я не буду перечислять конкретные коды, пожалуйста, попросите у меня какие -либо потребности.
Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.