idea 外掛的使用 進階篇(個人收集使用中的)
idea 外掛的使用 進階篇(個人收集使用中的)
恭喜你,如果你已經看到這篇文章,證明在idear使用上已經初有小成!那麼就要向著大神進發了!
下邊就是大神之路!
外掛的設定
在 IntelliJ IDEA 的安裝講解中我們其實已經知道,IntelliJ IDEA 本身很多功能也都是通過外掛的方式來實現的,只是 IntelliJ IDEA 本身就是它自己的外掛平臺最大的開發者而已,開發了很多優秀的外掛。
• 官網外掛庫:https://plugins.jetbrains.com/
• 如上圖標註 1 所示,IntelliJ IDEA 對外掛進行了很好的分類:
• All plugins 顯示所有外掛。
• Enabled 顯示當前所有已經啟用的外掛。
• Disabled 顯示當期那所有已經禁用的外掛。
• Bundled 顯示所有 IntelliJ IDEA 自帶的外掛。
• Custom 顯示所有我們自行安裝的外掛,如果你自己裝了很多次外掛的話,這個選項會用得比較多。
• 如上圖標註 2 所示,啟用的外掛是被勾選的,如果要禁用一個外掛,去掉勾選即可。
• 如上圖標註 3 所示,彈出 IntelliJ IDEA 公司自行開發的外掛倉庫列表,供下載安裝。
• 如上圖標註 4 所示,彈出外掛倉庫中所有外掛列表供下載安裝。
• 如上圖標註 5 所示,瀏覽本地的外掛檔案進行安裝,而不是從伺服器上下載並安裝。
• 需要嚴重注意的是:在國內的網路下,很經常出現顯示不了外掛列表,或是顯示了外掛列表,無法下載完成安裝。這時候請自行開VPN,一般都可以得到解決。
• 如上圖紅圈所示,如果 IntelliJ IDEA 開啟一個它可以識別並且支援的檔案型別,它會提示你它有對應的外掛進行支援,你可以安裝對應的外掛來加以相容此類檔案。
外掛的安裝
如上圖 Gif 演示,線上安裝 IntelliJ IDEA 外掛庫中的外掛。
• 如上圖 Gif 演示,離線安裝本地外掛檔案。
外掛名稱 外掛介紹 官網地址
Key promoter 快捷鍵提示 https://plugins.jetbrains.com/plugin/4455?pr=idea
CamelCase 駝峰式命名和下劃線命名交替變化 https://plugins.jetbrains.com/plugin/7160?pr=idea
CheckStyle-IDEA 程式碼規範檢查 https://plugins.jetbrains.com/plugin/1065?pr=idea
FindBugs-IDEA 潛在 Bug 檢查 https://plugins.jetbrains.com/plugin/3847?pr=idea
MetricsReloaded 程式碼複雜度檢查 https://plugins.jetbrains.com/plugin/93?pr=idea
Statistic 程式碼統計 https://plugins.jetbrains.com/plugin/4509?pr=idea
JRebel Plugin 熱部署 https://plugins.jetbrains.com/plugin/?id=4441
CodeGlance 在編輯程式碼最右側,顯示一塊程式碼小地圖 https://plugins.jetbrains.com/plugin/7275?pr=idea
GsonFormat 把 JSON 字串直接例項化成類 https://plugins.jetbrains.com/plugin/7654?pr=idea
Eclipse Code Formatter 使用 Eclipse 的程式碼格式化風格,在一個團隊中如果公司有規定格式化風格,這個可以使用。 https://plugins.jetbrains.com/plugin/6546?pr=idea
Ace Jump AceJump其實是一款能夠代替滑鼠的軟體,只要安裝了這款外掛,可以在程式碼中跳轉到任意位置。按快捷鍵進入 AceJump 模式後(預設是 Ctrl+J),再按任一個字元,外掛就會在螢幕中這個字元的所有出現位置都打上標籤,你只要再按一下標籤的字元,就能把游標移到該位置上。換言之,你要 移動游標時,眼睛一直看著目標位置就行了,根本不用管游標的當前位置。
lombok 如果你在用 Lombok,就得裝個這個外掛啦,省掉一堆 getter、setter,有關 Lombok 的詳細介紹參考 使用 Lombok 來縮減 Java 程式碼
LiveEdit Intellij IDEA 預設自動儲存的,根本不用 Ctrl+s,
LiveEdit 能自動更新瀏覽器裡的網頁,所以F5也省了
如果是是雙屏的話,基本上所見即所得了
IdeaJad 反編譯工具
GenerateToString
JUnitGenerator
WebServicePlugin
JarTool
GenerateSerialVersionUID
FindBugs FindBugs 通過檢查類檔案或 JAR 檔案,將位元組碼與一組缺陷模式進行對比從而發現程式碼缺陷,完成靜態程式碼分析,可以找出常見的 bug 或者可能潛在 bug 的地方。
Jrebel 熱部署神器,改完程式碼直接生效,不用重啟啦!
具體參考 利用Jrebel熱部署提升工作效率
可以切換變數命名風格,如 SogouInc、sogouInc、sogou—inc、SOGOU_INC
一、與JIRA整合
jira是一個廣泛使用的專案與事務跟蹤工具,被廣泛應用於缺陷跟蹤、客戶服務、需求收集、流程審批、任務跟蹤、專案跟蹤和敏捷管理等工作領域。idea可以很好的跟它整合,參考下圖:
File -> Settings ->Task -> Servers 點選右側上面的+號,選擇JIRA,然後輸入JIRA的Server地址,使用者名稱、密碼即可
然後開啟Open Task介面
如果JIRA中有分配給你的Task,idea能自動列出來
程式碼修改後,向svn提交時,會自動與該任務關聯
將每次提交的程式碼修改與JIRA上的TASK關聯後,有什麼好處呢? 我們每天可能要寫很多程式碼,修復若干bug,日子久了以後,誰也不記得當初為了修復某個bug做了哪些修改,不要緊張,只要你按上面的操作正確提交,idea都會幫你記著這些細節
如上圖,選擇最近提交的TASK列表,選擇Switch to,idea就會自動開啟該TASK關聯的原始碼,並定位到修改過的程式碼行。當然如果該TASK已經Close了,也可以選擇Remove將其清空。
二、UML類圖外掛
idea已經集成了該功能,只是預設沒開啟,仍然開啟Settings介面,定位到Plugins,輸入UML,參考下圖:
確認UML 這個勾已經勾上了,然後點選Apply,重啟idea,然後仍然找一個java類檔案,右擊Diagram
然後,就自個兒爽去吧
三、SSH整合
java專案經常會在linux上部署,每次要切換到SecureCRT這類終端工具未免太麻煩,idea也想到了這一點
然後填入IP、使用者名稱、密碼啥的
點選OK,就能連線上linux了
注:如果有中文亂碼問題,可以在Settings裡調整編碼為utf-8
四、整合FTP
點選上圖中的…,新增一個Remote Host
填寫ftp的IP、使用者名稱、密碼,根路徑啥的,然後點選Test FTP Connection,正常的話,應該能連線,如果連線不通,點選Advanced Options,參考下圖調整下連線選項
配置了FTP連線後,在提交程式碼時,可以選擇提交完成後將程式碼自動上傳到ftp伺服器
五、Database管理工具
先看效果吧:
有了這個,再也不羨慕vs.net的db管理功能了。配置也很簡單,就是點選+號,增加一個Data Source即可
唯一要注意的是,intellij idea不帶資料庫驅動,所以在上圖中,要手動指定db driver的jar包路徑。
六、CheckStyle-IDEA
通過檢查對程式碼編碼格式,命名約定,Javadoc,類設計等方面進行程式碼規範和風格的檢查,從而有效約束開發人員更好地遵循程式碼編寫規範。
軟體安裝成功之後,首先要設定規則。可以通過
Preferences—>Other Settings —>CheckStyles
進行設定,可以直接將檔案新增進來,然後就可以對具體的檔案進行檢查了。
同樣,該外掛也有個單獨的檢視,該檢視可以展示檢查結果。
配置checkstyle
File->Setting->Other Setting->checkStyle至下圖介面
點選紅框選中的綠色加號至上層頁面新增自定義的檢查規則,選擇附件中的my_checks.xml,Next,Finish後至下圖。
選中新新增的檢查規則,並Apply即可。
使用checkStyle檢查檔案
在File->Setting->Editor->CheckStyle中選擇是否進行實時檢查。
(1) 實時檢查,實時地對不規範的書寫進行提示 ,並在編輯頁面中進行顏色標識。
(2) 取消實時檢查後,可在開啟的檔案中右擊選擇Check Current File對當前頁面進行檢查,此時可在下圖所示的CheckStyle Scan 中檢視不規範內容,點選條目可檢視對應出錯語句。
其他
如有一些必須的但不符合檢查規則的地方需要忽略檢查可以按照下述進行註釋
// CSOFF: MagicNumber
需要忽略的程式碼段
// CSON: MagicNumber
其中MagicNumber為檢查的一個步驟,表示檢查魔法數,可以替換成其他的檢查步驟,比如要忽略該段的行長度,可將MagicNumber改為LineLength即可。
七、lombok 註解:
lombok 提供的註解不多,可以參考官方視訊的講解和官方文件。
Lombok 註解線上幫助文件:http://projectlombok.org/features/index.
下面介紹幾個我常用的 lombok 註解:
@Data :註解在類上;提供類所有屬性的 getting 和 setting 方法,此外還提供了equals、canEqual、hashCode、toString 方法
@Setter:註解在屬性上;為屬性提供 setting 方法
@Getter:註解在屬性上;為屬性提供 getting 方法
@Log4j :註解在類上;為類提供一個 屬性名為log 的 log4j 日誌物件
@NoArgsConstructor:註解在類上;為類提供一個無參的構造方法
@AllArgsConstructor:註解在類上;為類提供一個全參的構造方法
@EqualsAndHashCode:實現equals()方法和hashCode()方法
@ToString:實現toString()方法
@Cleanup:關閉流
@Synchronized:物件同步
@SneakyThrows:丟擲異常
下面是簡單示例
1.不使用 lombok 的方案
1
2 public class Person {
3
4 private String id;
5 private String name;
6 private String identity;
7 private Logger log = Logger.getLogger(Person.class);
8
9 public Person() {
10
11 }
12
13 public Person(String id, String name, String identity) {
14 this.id = id;
15 this.name = name;
16 this.identity = identity;
17 }
18
19 public String getId() {
20 return id;
21 }
22
23 public String getName() {
24 return name;
25 }
26
27 public String getIdentity() {
28 return identity;
29 }
30
31 public void setId(String id) {
32 this.id = id;
33 }
34
35 public void setName(String name) {
36 this.name = name;
37 }
38
39 public void setIdentity(String identity) {
40 this.identity = identity;
41 }
42 }
43
2.使用 lombok 的方案
1
1
2 @Data
3 @Log4j
4 @NoArgsConstructor
5 @AllArgsConstructor
6 public class Person {
7
8 private String id;
9 private String name;
10 private String identity;
11
12 }
13
上面的兩個 java 類,從作用上來看,它們的效果是一樣的,相比較之下,很明顯,使用 lombok 要簡潔許多,特別是在類的屬性較多的情況下,
同時也避免了修改欄位名字時候忘記修改方法名所犯的低階錯誤。最後需要注意的是,在使用 lombok 註解的時候記得要匯入 lombok.jar 包到工程
---------------------
作者:sunnylovecmc
來源:CSDN
原文:https://blog.csdn.net/sunny243788557/article/details/52325444?utm_source=copy
版權宣告:本文為博主原創文章,轉載請附上博文連結!