摘要:從插件安裝、插件使用、代碼掃描等方面扑毡,全面解決你關(guān)于阿里巴巴Java開發(fā)手冊插件的使用疑問有送。
首先非常感謝大家對插件的支持與意見淌喻,這里詳細介紹一下《阿里巴巴Java開發(fā)手冊》IDEA插件與Eclipse插件的安裝使用。
關(guān)于規(guī)約插件的背景介紹雀摘,可見上篇文章:提升團隊研發(fā)效能利器裸删,《阿里巴巴Java開發(fā)手冊》插件全球首發(fā)(附插件下載地址)
一、阿里巴巴Java開發(fā)手冊IDEA插件使用指南
通過Jetbrains官方倉庫安裝
1. 打開 Settings >> Plugins >> Browse repositories...
2. 在搜索框輸入alibaba即可看到Alibaba Java Code Guidelines插件阵赠,點擊Install進行安裝涯塔,然后重啟IDE生效注意:因為插件zip包托管在Jetbrains官方CDN上,所以是從國外的服務(wù)器進行下載清蚀,可能會出現(xiàn)超時的情況
1.打開插件頁面
2.Settings >> Plugins >> Install plugin from disk...匕荸,選擇剛剛下載的zip包安裝,然后重啟IDE
最低支持IDEA版本為14.1(buildNumber 141.0轧铁,可以在About Intellij IDEA中查看版本信息)每聪,使用IDEA14的同學(xué)最好升級到14.1.7(歷史版本傳送門)
插件基于JDK1.7打包,所以IDEA啟動時使用的JDK版本如果是1.6的話就會報Unsupported major.minor version 51.0異常,建議大家都升級一下药薯。
修改字體——Appearance&Behavior -> Appearance -> UI Options -> Name 里面設(shè)置成微軟雅黑(microsoft yahei light)
Switch Language to English and restart.
目前插件實現(xiàn)了集團編碼規(guī)約中的41條規(guī)則绑洛,大部分基于PMD實現(xiàn),其中有4條規(guī)則基于IDEA實現(xiàn)童本,并且基于IDEAInspection實現(xiàn)了實時檢測功能真屯。部分規(guī)則實現(xiàn)了Quick Fix功能,對于可以提供Quick Fix但沒有提供的穷娱,我們會盡快實現(xiàn)绑蔫,也歡迎有興趣的同學(xué)加入進來一起努力。
目前插件檢測有兩種模式:實時檢測泵额、手動觸發(fā)配深。
實時檢測功能會在開發(fā)過程中對當前文件進行檢測,并以高亮的形式提示出來嫁盲,同時也可以支持Quick Fix篓叶,該功能默認開啟,可以通過配置關(guān)閉羞秤。
檢測結(jié)果高亮提示缸托,并且鼠標放上去會彈出提示信息。
IntentionQuickFix功能
Alt+Enter鍵可呼出Intention菜單瘾蛋,不同的規(guī)則會提示不同信息的Quick Fix按鈕
在某些情況下俐镐,我們不希望對代碼提示違規(guī)信息,比如我們在閱讀Github開源項目代碼的時候哺哼,如果界面出現(xiàn)一堆紅色佩抹、黃色的提示,此時心里肯定是飄過一萬只草泥馬取董。這個時候我們可以通過Inspection的設(shè)置關(guān)閉實時檢測功能匹摇。
通過右鍵快速關(guān)閉(打開)所有規(guī)則的實時檢測功能
2. 通過Settings >> Editor >> Inspections 進行手動設(shè)置
也可以關(guān)閉某條規(guī)則的實時檢測功能或者修改提示級別。
可以通過右鍵菜單甲葬、Toolbar按鈕、快捷鍵三種方式手動觸發(fā)代碼檢測懈贺。同時結(jié)果面板中可以對部分實現(xiàn)了QuickFix功能的規(guī)則進行快速修復(fù)经窖。
在當前編輯的文件中點擊右鍵,可以在彈出的菜單中觸發(fā)對該文件的檢測梭灿。
在左側(cè)的Project目錄樹種點擊右鍵画侣,可以觸發(fā)對整個工程或者選擇的某個目錄、文件進行檢測堡妒。
如果您打開了IDE的Toolbar配乱,也可以通過Toolbar中的按鈕來觸發(fā)檢測,目前Toolbar的按鈕觸發(fā)的檢測范圍與您IDE當時的焦點有關(guān),如當前編輯的文件或者是Project目錄樹選中的項搬泥,是不是感覺與右鍵菜單的檢測范圍類似呢桑寨。
使用快捷鍵(Ctrl+Shift+Alt+J)觸發(fā)彈出窗口,選擇檢測范圍忿檩;您也可自定義快捷鍵尉尾。
檢測結(jié)果直接使用IDEA Run Inspection By Name功能的結(jié)果界面,插件的檢測結(jié)果分級為Blocker燥透、Critical沙咏、Major碉钠。默認按等級分組夫植,方便統(tǒng)計每個級別錯誤的數(shù)量钦铺。
默認情況我們在結(jié)果面板需要雙擊具體違規(guī)項才能打開對應(yīng)的源文件余爆,開啟Autoscroll To Source選項陆蟆,單擊面板中的文件名瞬逊、或者是具體的違規(guī)項的時候IDEA會自動打開對應(yīng)的源文件哎媚。
對于實現(xiàn)Quick Fix的規(guī)則垫言,在結(jié)果面板中可以直接一鍵修復(fù)注意:IDEA14杉女、15可以通過左下角的燈泡進行一鍵修復(fù)操作瞻讽。
二、阿里巴巴Java開發(fā)手冊Eclipse插件使用指南
首先非常感謝大家對插件的支持與意見熏挎,Eclipse的功能相對來說比較簡單速勇,希望有更多的同學(xué)加入進來一起完善。
環(huán)境:JDK1.8坎拐,Eclipse4+烦磁。有同學(xué)遇到過這樣的情況,安裝插件重啟后哼勇,發(fā)現(xiàn)沒有對應(yīng)的菜單項都伪,從日志上也看不到相關(guān)的異常信息,最后把JDK從1.6升級到1.8解決問題积担。
Help -> Install New Software...
輸入Update Site地址:https://p3c.alibaba.com/plugin/eclipse/update回車陨晶,然后勾選Ali-CodeAnalysis,再一直點Next Next...按提示走下去就好帝璧。 然后就是提示重啟了先誉,安裝完畢。
注意:有同學(xué)反映插件掃描會觸發(fā)JPA插件啟動后臺線程執(zhí)行不明任務(wù)的烁,如果不需要的話卸載掉JPA插件即可褐耳,目前尚未發(fā)現(xiàn)原因
目前插件實現(xiàn)了開發(fā)手冊中的53條規(guī)則,大部分基于PMD實現(xiàn)渴庆,其中有4條規(guī)則基于Eclipse實現(xiàn)铃芦,支持4條規(guī)則的QuickFix功能雅镊。
* 所有的覆寫方法,必須加@Override注解刃滓,
* if/for/while/switch/do等保留字與左右括號之間都必須加空格,
* long或者Long初始賦值時仁烹,必須使用大寫的L,不能是小寫的l)
* Object的equals方法容易拋空指針異常注盈,應(yīng)使用常量或確定有值的對象來調(diào)用equals晃危。
目前不支持代碼實時檢測,需要手動觸發(fā)老客,希望更多的人加入進來一起把咱們的插件做得越來越來僚饭,盡量提升研發(fā)的使用體驗。
可以通過右鍵菜單胧砰、Toolbar按鈕兩種方式手動觸發(fā)代碼檢測鳍鸵。同時結(jié)果面板中可以對部分實現(xiàn)了QuickFix功能的規(guī)則進行快速修復(fù)。
在當前編輯的文件中點擊右鍵尉间,可以在彈出的菜單中觸發(fā)對該文件的檢測偿乖。
在左側(cè)的Project目錄樹種點擊右鍵,可以觸發(fā)對整個工程或者選擇的某個目錄哲嘲、文件進行檢測贪薪。
也可以通過Toolbar中的按鈕來觸發(fā)檢測,目前Toolbar的按鈕觸發(fā)的檢測范圍與您IDE當時的焦點有關(guān)眠副,如當前編輯的文件或者是Project目錄樹選中的項画切,是不是感覺與右鍵菜單的檢測范圍類似呢。
簡潔的結(jié)果面板囱怕,按規(guī)則等級分類霍弹,等級->規(guī)則->文件->違規(guī)項。同時還提供一個查看規(guī)則詳情的界面娃弓。
清除結(jié)果標記更方便典格,支持上面提到的4條規(guī)則QuickFix。
文章作者:阿里云研發(fā)效能事業(yè)部?駿烈
如你在使用插件的過程里台丛,有任何問題或建議耍缴,歡迎與代碼規(guī)約作者孤盡聯(lián)系,也歡迎加入P3C項目組挽霉,一起打造具有全球競爭力私恬,效率/質(zhì)量最優(yōu)的一站式研發(fā)/運維/測試平臺,加入方式:guanbao.yanggb@taobao.com