常見的IDEA插件主要有如下幾類:
常用工具支持
Java日常開發(fā)需要接觸到很多常用的工具,為了便于使用少办,很多工具也有IDEA插件供開發(fā)使用苞慢,其中大部分已經(jīng)在IDEA中默認(rèn)集成了。例如maven英妓、git枉疼、svn、tomcat鞋拟、jetty骂维、jrebel、Gradle等贺纲。
功能增強(qiáng)
還有些插件提供了一些IDE中不具有的功能航闺,比如靜態(tài)代碼掃描、代碼自動生成等猴誊。
框架集成
集成框架主要是為了提供框架定制的代碼和配置的生成潦刃,以及快速的訪問框架提供的功能。例如集成Spring框架懈叹,Mybatis框架等乖杠。
UI定制化及優(yōu)化
UI定制化相關(guān)的插件主要提供一下個性化需求定制,例如修改編輯區(qū)的背景圖片插件澄成、修改代碼顏色等胧洒。
其他編程語言支持
IDEA主要支持Java,為了使用其他語言墨状,可以使用一些支持其他語言的插件卫漫,通過這些插件可以實(shí)現(xiàn)語法分析,配色主題肾砂,代碼格式化和提示等功能列赎。例如Go語言的支持的插件。
二镐确、IDEA插件安裝
?IDEA的插件安裝非常簡單包吝,對于很多插件來說,只要你知道插件的名字就可以在IDEA里面直接安裝源葫。
?Preferences—>Plugins—>查找所需插件—>Install或者Preferences—>Plugins—>Install plug from disk —>選擇下載好的插件安裝安裝之后重啟IDEA即可生效IDEA插件倉庫IntelliJ IDEA激發(fā)了許多Java開發(fā)人員編寫插件诗越, IntelliJ IDEA Plugins 中目前包含3000+個插件并且還在不斷增長。IDEA插件倉庫地址呢:https://plugins.jetbrains.com/?idea??
1.
背景圖片
目前臼氨,IDEA支持設(shè)置背景圖片掺喻。這對于廣大程序員來說無疑是個好功能。整日對著枯燥的代碼實(shí)在是會讓人疲乏。要是可以設(shè)置一張美女圖片的話感耙。褂乍。。
設(shè)置方法
Ctrl+Shift+A(或者h(yuǎn)elp -> find action)調(diào)用彈窗后輸入Set Background Image
在里面設(shè)定要設(shè)置為Image的圖片,透明度調(diào)到15左右即硼,保存即可逃片。
2.內(nèi)置terminal
目前IntelliJ IDEA已經(jīng)有一個內(nèi)置的terminal工具,可以方便的使用shell命令只酥。
3.
內(nèi)置support
目前很多新版本的IntelliJ IDEA中褥实,已經(jīng)內(nèi)置了很多support插件,比如我們常用的markdown support 裂允、UML support 以及 android support等损离。
有了markdowm support插件以后,就可以直接預(yù)覽md語法的內(nèi)容了绝编。
5.必備插件
1.Maven Helper
目前僻澎,Java開發(fā)很多都在使用maven進(jìn)行項目管理和自動構(gòu)建。
日常開發(fā)中十饥,可能經(jīng)常會遇到j(luò)ar包沖突等問題窟勃,就需要通過查看maven依賴樹來查看依賴情況。這種方式不是很高效逗堵,這里推薦一個插件秉氧,安裝之后,直接打開pom文件蜒秤,即可查看依賴數(shù)汁咏,還能自動分析是否存在jar包沖突。
一旦安裝了Maven Helper插件垦藏,只要打開pom文件梆暖,就可以打開該pom文件的Dependency Analyzer視圖(在文件打開之后伞访,文件下面會多出這樣一個tab)掂骏。
進(jìn)入Dependency Analyzer視圖之后有三個查看選項,分別是Conflicts(沖突)厚掷、All Dependencies as List(列表形式查看所有依賴)、All Dependencies as Tree(樹結(jié)構(gòu)查看所有依賴)冒黑。并且這個頁面還支持搜索田绑。
2.FindBugs-IDEA
FindBugs很多人都并不陌生,Eclipse中有插件可以幫助查找代碼中隱藏的bug抡爹,IDEA中也有這款插件掩驱。
使用方法很簡單,就是可以對多種級別的內(nèi)容進(jìn)行finbugs
分析完之后會有一個視圖進(jìn)行提示,詳細(xì)的說明是哪種問題欧穴。
按照提示解決完問題之后再執(zhí)行findbug查看情況即可民逼。
3、阿里巴巴代碼規(guī)約檢測
2017年10月14日杭州云棲大會涮帘,Java代碼規(guī)約掃描插件全球首發(fā)儀式正式啟動拼苍,規(guī)范正式以插件形式公開走向業(yè)界,引領(lǐng)Java語言的規(guī)范之路调缨。
Java代碼規(guī)約掃描插件以今年年初發(fā)布的《阿里巴巴Java開發(fā)規(guī)約》為標(biāo)準(zhǔn)疮鲫,作為Eclipse、IDEA的插件形式存在弦叶,檢測JAVA代碼中存在不規(guī)范得位置然后給予提示俊犯。規(guī)約插件是采用kotlin語言開發(fā)的,感興趣的同學(xué)可以去開看插件源碼伤哺。
阿里巴巴規(guī)約插件包含三個子菜單:編碼規(guī)約掃描瘫析、關(guān)閉試試檢測功能。
并且默责,該插件支持在編寫代碼的同時進(jìn)行提示贬循,
這款插件,真的可以很大程度上提升代碼質(zhì)量桃序,一定要安裝杖虾。
4、GsonForma
Java開發(fā)中媒熊,經(jīng)常有把json格式的內(nèi)容轉(zhuǎn)成Object的需求奇适,比如項目開始時,合作方給你提供了一個json格式request/response芦鳍,這時候你就需要將其定義成一個Java類嚷往,GsonFormat這款插件可以實(shí)現(xiàn)該功能。
5柠衅、Lombok plugin
在Java中皮仁,我們經(jīng)常會定義很多JavaBean,這些Bean需要有g(shù)etter菲宴、setter贷祈、toString、equals和hashCode等方法喝峦。
通常情況下势誊,我們可以使用IDEA的快捷鍵生成這些代碼,但是自動生成的代碼后谣蠢,如果bean中的屬性一旦有修改粟耻,需要重新生成查近,給代碼維護(hù)增加了一定的負(fù)擔(dān)。
有一款很好的插件挤忙,可以幫助開發(fā)者節(jié)省這部分工作嗦嗡。那就是Lombok。
只要在IDEA中安裝了該插件饭玲,只需要在JavaBean中添加一行注解代碼侥祭,插件就會自動幫我們生成getter、setter茄厘、toString矮冬、equals和hashCode等方法。
當(dāng)然次哈,這些方法不止在IDE中的代碼調(diào)用中需要用到胎署,在真正線上部署的時候也需要有,所以窑滞,還需要使用maven引入一個lombok的包琼牧。
```
<dependency> ? ? ?<groupId>org.projectlombok</groupId> ? ? ?<artifactId>lombok</artifactId> ? ? ?<version>1.16.10
/**
* @author Hollis
*/
public class HollisLab {
? ?public static void main(String[] args) {
? ? ? ?Wechat wechat = new Wechat();
? ? ? ?wechat.setId("Hollis");
? ? ? ?wechat.setDesc("");
? ? ? ?System.out.println(wechat);
? ?}
}
@Data
class Wechat {
? ?private String id;
? ?private String desc;
}
```
我們在Wechat類上面添加了@Data注解,插件就自動幫我們添加了getter/setter和toString方法哀卫。
6巨坊、String Manipulation
字符串日常開發(fā)中經(jīng)常用到的,但是不同的字符串類型在不同的地方可能有一些不同的規(guī)則此改,比如類名要用駝峰形式趾撵、常量需要全部大寫等,有時候還需要進(jìn)行編碼解碼等共啃。這里推薦一款強(qiáng)大的字符串轉(zhuǎn)換工具——String Manipulation占调。
它強(qiáng)大到什么程度,可以百度它的功能列表你就知道了:
7.ignore
目前很多開發(fā)都在使用git做版本控制工具移剪,但是有些時候有些代碼我們是不想提到到我們的代碼倉庫中的究珊,比如ide自動生成的一些配置文件,或者是我們打包生成的一些jar文件等纵苛,這時候就需要編寫一個.ignore文件剿涮,來排除那些不想被版本管理的文件。
這里推薦一個好用的插件.ignore赶站,他可以幫我們方便的生成各種ignore文件幔虏。
安裝插件后,選中項目贝椿,右鍵新建的時候,會多出一個.ignore文件的選項陷谱,可以通過這個選項創(chuàng)建ignore文件烙博。
在彈出的對話框中瑟蜈,可以自動幫我們生成一份.ignore文件,這里我們讓其幫忙自動排除所有和idea有關(guān)的文件渣窜。
8铺根、Mybatis plugin
目前ORM框架中,Mybatis非常受歡迎乔宿。但是位迂,同時給很多開發(fā)帶來困擾的就是Mybatis需要很多xml的配置文件,有的時候很難去進(jìn)行修改详瑞。
這里推薦一款神器掂林,可以讓你像編輯java代碼一樣編輯mybatis的文件。
Intellij Idea Mybatis插件主要功能:
提供Mapper接口與配置文件中對應(yīng)SQL的導(dǎo)航
編輯XML文件時自動補(bǔ)全
根據(jù)Mapper接口, 使用快捷鍵生成xml文件及SQL標(biāo)簽
ResultMap中的property支持自動補(bǔ)全坝橡,支持級聯(lián)(屬性A.屬性B.屬性C)
快捷鍵生成@Param注解
XML中編輯SQL時, 括號自動補(bǔ)全
XML中編輯SQL時, 支持參數(shù)自動補(bǔ)全(基于@Param注解識別參數(shù))
自動檢查Mapper XML文件中ID沖突
自動檢查Mapper XML文件中錯誤的屬性值
支持Find Usage
支持重構(gòu)從命名
支持別名
自動生成ResultMap屬性
但是這款插件是收費(fèi)的泻帮,但是不影響他確實(shí)是一個很實(shí)用,可以很大程度上提升開發(fā)效率的插件计寇。讀者可以考慮使用Free Mybatis plugin(這款插件我沒用過锣杂,具體是否好用有待考證)。
9番宁、Key promoter X
對于很多剛剛開始使用IDEA的開發(fā)者來說元莫,最苦惱的就是不知道快捷鍵操作是什么。
使用IDEA蝶押,如果所有操作都使用鼠標(biāo)柒竞,那么說明你還不是一個合格的程序員。
這里推薦一款可以進(jìn)行快捷鍵提示的插件Key promoter X播聪。
Key Promoter X 是一個提示插件朽基,當(dāng)你在IDEA里面使用鼠標(biāo)的時候,如果這個鼠標(biāo)操作是能夠用快捷鍵替代的离陶,那么Key Promoter X會彈出一個提示框稼虎,告知你這個鼠標(biāo)操作可以用什么快捷鍵替代。
當(dāng)我使用鼠標(biāo)查看一個方法都被哪些類使用的時候招刨,就會提示:
10霎俩、AceJump
前面介紹了一款可以通過使用快捷鍵來代替鼠標(biāo)操作的插件,這里再介紹一款可以徹底擺脫鼠標(biāo)的插件沉眶,即AceJump
AceJump允許您快速將光標(biāo)導(dǎo)航到編輯器中可見的任何位置打却,只需點(diǎn)擊“ctrl +;”,然后輸入一個你想要跳轉(zhuǎn)到的字符谎倔,之后鍵入匹配的字符就跳轉(zhuǎn)到你想要挑戰(zhàn)的地方了柳击。
如以上代碼,我想在這個類中片习,跳轉(zhuǎn)到println那個位置捌肴,只需要按下快捷鍵:“ctrl +;”蹬叭,然后輸入println,即可定位到目標(biāo)位置状知。
上圖中秽五,我輸入了pri三個字母后,頁面提示三個可選項饥悴,分別用字母F坦喘、J、G標(biāo)注西设,這時候只需要按下對應(yīng)字母瓣铣,即可快速定位到指定位置,是不是很方便济榨。
11坯沪、activate-power-mode
最后,介紹一款程序員很好的在妹子面前裝X的插件——activate-power-mode 擒滑。
安裝了這款插件之后腐晾,你寫代碼的時候,就會附加一些狂拽炫酷屌炸天的效果: