1. 程式人生 > >IntelliJ idea外掛開發(一)

IntelliJ idea外掛開發(一)

1.建立新工程點選plantform plugin(什麼也不用選擇),並選擇工程名和工程目錄


2.finish完成建立

3.建立action。在scr下面建立包名,我的為com.dyc.test.然後新增如下action類。

public class TextBoxes extends AnAction {
    // If you register the action from Java code, this constructor is used to set the menu item name
    // (optionally, you can specify the menu description and an icon to display next to the menu item).
    // You can omit this constructor when registering the action in the plugin.xml file.
    public TextBoxes() {
        // Set the menu item name.
        super("Text _Boxes");
        // Set the menu item name, description and icon.
        // super("Text _Boxes","Item description",IconLoader.getIcon("/Mypackage/icon.png"));
    }
 
    public void actionPerformed(AnActionEvent event) {
        Project project = event.getData(PlatformDataKeys.PROJECT);
        String txt= Messages.showInputDialog(project, "What is your name?", "Input your name", Messages.getQuestionIcon());
        Messages.showMessageDialog(project, "Hello, " + txt + "!\n I am glad to see you.", "Information", Messages.getInformationIcon());
    }
}
4.註冊action,註冊位置:工程目錄->meta-inf->plugin.xml,選擇與action同級的地方copy這段程式碼
<actions>
<!--
group id="MyPlugin.SampleMenu" text="_Sample Menu"
text是顯示在工具欄的那個標題
-->
<group id="MyPlugin.SampleMenu" text="_Sample Menu" description="Sample menu">
<!-- 
<add-to-group group-id="MainMenu" anchor="last" 
group-id指的是子action要加入的gruop型別,這個是api自帶的名稱,有很多種,MainMenu只是其中一種
anchor 指的是子選單顯示位置
一個action,表示一個選項,class是對應的類名,text是要展示的子選單名字
 -->
<add-to-group group-id="MainMenu" anchor="last" />
<action id="Myplugin.Textboxes" class="com.dyc.test.TextBoxes" text="Text _Boxes" description="A test menu item" /> 
</group>
</actions>

5.點選執行,可以看到工具欄多了一個選項。其實是執行了actionPerformed.
6.action也可以通過new->action的方式進行建立

7.打包外掛

  a.build->buildproject 

  b.build->prepare plugin modle for"xxxxxx" .....  

  

8.使用

  在idea,或android studio,或其他idea安裝目錄下面,進入plugin資料夾,然後 建立資料夾myplugin,進入myplugin,建立lib,將上面生成的jar包放入lib裡面,重啟idea就可以使用外掛包了

相關推薦

IntelliJ idea外掛開發

1.建立新工程點選plantform plugin(什麼也不用選擇),並選擇工程名和工程目錄 2.finish完成建立 3.建立action。在scr下面建立包名,我的為com.dyc.test.然後新增如下action類。 public class TextBoxe

JAVA IDE IntelliJ IDEA使用簡介—之介面元素

(注:簡介基於IDEA的版本為:11.0,下載地址:http://www.jetbrains.com/idea/) 開啟IDEA,(當第一次開啟的時候出現的是一個歡迎頁面,隨便建立一個project來進入到IDEA的主介面),主介面顯示如下: 主介面由6個主要區域組成(圖中

Atlassian JIRA 外掛開發 — 環境準備

配置環境前期準備: Java安裝包; Atlassian Plugin sdk開發包; SDK版本和JDK版本不要差別太大,如我原來使用SDK5.0.13,JDK1.8.0-65就無法啟動,當然

Intellij Idea使用入門——Idea常用設定,Project和Module的區別及快捷鍵總結

*本篇主要是對Idea的常用設定(主題、字型、自動編譯、編譯器選擇等)、Project和Module、快捷鍵等做個介紹!*    Intellij Idea是JetBrains公司的產品,社群版可以免費使用,旗艦版是按年收費的,學生憑學生證或者創業公司可免費使用一年,當然也可

Chrome外掛開發

作為一個開發人員,我們在日常工作中肯定會用到 Chrome 瀏覽器,同時也會用到谷歌的一些外掛,比如 Tampermonkey,AdBlock等,在之前的文章本人還用過 Tampermonkey 外掛,好使又好玩,傳送門  https://www.cnblogs.com/weijiutao/p/1

Idea建立maven web專案,並使用tomcat外掛執行

前言: 從eclipse轉idea是中遇到了很多問題,折騰了很久最終才勉強完成基本專案結構的搭建,部落格一篇以為總結!   一:建立專案 (1)點選建立專案   (2)選擇maven   (3)填寫專案

【Mybtais】Mybatis 外掛 Plugin開發動態代理步步解析

需求:   對原有系統中的方法進行‘攔截’,在方法執行的前後新增新的處理邏輯。 分析:   不是辦法的辦法就是,對原有的每個方法進行修改,新增上新的邏輯;如果需要攔截的方法比較少,選擇此方法到是會節省成本。但是面對成百上千的方法怎麼辦?此時需要用到動態代理來實現。 場景:   例如:對原有的系統新增日誌記錄、

AndroidNDK初步開發之安裝eclipse外掛支援jni開發

因為初次使用AndroidNDK開發,而且使用的是Google近乎遺棄的Eclipse,去jni開發,實在是一件實為苦惱的事,花了我2天的時間~下面把我會分2節來“完美”的說明使用eclipse進行jni開發的步驟。 首先當然是安裝NDK,這裡要說明一

Android Plugin插樁式實現外掛開發-實現原理及Activity外掛化實現

1. 前言在現在一些大型的Android應用中都採用了外掛化的開發方式,比如美團,支付寶及我們常用的微信等採用了插修的化的開發方式來進行開發的,既然國內一流的網際網路公司都採用這樣的方式來開發那它一定能帶給開發部署大型應用帶來很大的便捷,那麼外掛化的優勢在哪裡呢?1.1 外掛

瀏覽器外掛之ActiveX開發

 一般的Web應用對於瀏覽器外掛能不使用的建議儘量不使用,因為其涉及到安全問題以及影響使用者安裝(或自動下載註冊安裝)體驗問題。在有特殊需求(如涉及資料安全的金融業務資料互動、需外掛才能實現的與本地裝置的互動等)的情況下可以酌情慎用。      瀏覽器外掛總體可以劃分為

阿里java開發規約的Idea外掛安裝英文

Idea Plugin Prepare Project JDK: 1.7+ Gradle: 3.0+(Req

阿里java開發規約的Idea外掛安裝中文

首先非常感謝大家對外掛的支援與意見,英文版的文件還是略為簡單,這裡詳細介紹一下外掛的安裝使用。 外掛安裝 通過J

NIO原理剖析與Netty初步----淺談高性能服務器開發

返回 創建 基於 register 訪問 io操作 nbsp info class 除特別註明外,本站所有文章均為原創,轉載請註明地址 在博主不長的工作經歷中,NIO用的並不多,由於使用原生的Java NIO編程的復雜性,大多數時候我們會選擇Netty,m

淺談WebService開發

man att set style 訪問 row nag 序列 ros 一、什麽是WebService: 簡單通俗來說,就是企業之間、網站之間通過Internet來訪問並使用在線服務,一些數據,由於安全性問題,不能提供數據庫給其他單位使用,這時候可以使

微信公眾號開發

jpg 解壓 china arc 公眾平臺 開發 技術分享 更換 微信公眾號 4.1 示例代碼設置 首先下載此處的php接入代碼 ,在公眾號中 配置 url 地址指向 文件 代碼 只需更換 自定義的token 即可 這樣就完成最初的接入 微信公眾平臺提供了一個php示例

從零開始學習OpenCL開發架構

處理器 多媒體 c++ stl context 實驗 通用 必看 是你 同時存在 1 異構計算、GPGPU與OpenCL OpenCL是當前一個通用的由很多公司和組織共同發起的多CPU\GPU\其他芯片 異構計算(heterogeneous)的標準,它是跨平臺的。旨在充

基於itchat的微信群聊小助手基礎開發

log 表達式 數據包 gin 找到 ont 基本 時間 msg 前段時間由於要管理微信群,基於itchat開發了一個簡單的微信機器人 主要功能有: 圖靈機器人功能 群聊昵稱格式修改提示 消息防撤回功能 鬥圖功能 要開發一個基於itchat的最基本的聊天機器人,

使用IntelliJ IDEA 配置Maven入門

創建 ase 軟件 tle bsp 知識 path int down 1. 下載Maven 官方地址:http://maven.apache.org/download.cgi 解壓並新建一個本地倉庫文件夾 2.配置本地倉庫路徑 3.配置maven環境變量

Superset 開發添加一個頁面

rate rst view key pri pre span bsp interface superset\models\core.py 下進行添加模型 class ExeclInfoAdd(Model): __tablename__ = ‘ExeclInfoAd