前言
程式設計師對待IDE都是虔誠的,經常因為誰是最好的IDE而在江湖上掀起波瀾,曾經我也是。

後來我遇到了IDEA,從此是它,餘生都是它。
IDEA 毫無疑問是目前最強大的Java開發工具了,但是大部分的人並沒有將它用到極致,很多實用的配置,外掛,小技巧被忽視。就像JDK8的新特性一樣,你知道它在且堅持不用,但是隻要用過一次就知道什麼是真滴香。

以下所有常見配置的思維導圖,內容豐富,思維導圖配合 Ctrl+F 搜尋食用風味兒更佳。
先贊後看,養成習慣
IDEA 軟體設定Settings頁面
Settings是對軟體本身的一些屬性進行配置,例如字型 主題 背景圖 外掛等。
如何開啟Settings設定頁面

Settings設定頁面結構詳解

結構
- Appearance & Behavior 外觀和行為
- Keymap 快捷鍵
- Editor 編輯器設定
- Plugins 外掛
- Version Control 版本控制
- Build,Execution,Deployment 構建,執行,部署
- Languages & Frameworks 語言和框架
- Tools 工具集
IDEA 常見的xx個設定
絕大部分的設定都包含效果示意圖,文章結構:設定方法-->效果示意圖
Appearance & Behavior 外觀和行為
設定主題

目前我的IDEA中有兩套主題:Darcula, IntelliJ。
- Darcula 就是神祕的黑色主題,我偏愛黑色
- IntelliJ 白色主題
設定選單字型

Keymap 快捷鍵
設定為Eclipse快捷鍵的鍵位
如果對 Eclipse 難以忘懷可以使用其鍵位,這種操作我也不推薦,感覺彆扭。

修改快捷鍵
不要一次性修改大量的快捷鍵

- Add keyboard Shortcut 新增鍵盤快捷鍵 實際上就是修改當前的鍵位
- Add Mouse Shortcut 增加滑鼠捷徑
- Add Abbreviation
- Remove Ctrl+Alt+Shift+S 移除改快捷鍵
檢視快捷鍵的功能
通過快捷鍵 查詢快捷鍵的功能,例如:你不知道 Ctrl+F什麼意思 可以通過該功能進行搜尋

Editor 編輯器設定
Editor 中的設定可以說是最高頻使用的設定了,編輯區的字型,自動導包,註釋生成等等
什麼是Editor編輯器呢?就是寫程式碼的區域
Editor-General
設定滑鼠滾輪滾動修改字型大小

設定成功之後,就可以通過 Ctrl+滾輪 實現程式碼字型大小的調節了
設定滑鼠懸浮提示

懸停提示是一個非常有用的功能,效果如下

設定自動導包

- Add unambiguous imports on the fly:新增明確的匯入
- Optimize imports on the fly:自動幫我們優化匯入的包
設定顯示行號和方法間的分隔符

效果如下

忽略大小寫提示
- Ctrl + Alt + S 開啟設定介面(或者從選單File - settings 進來)
- 在搜尋框輸入Completion定位到Code Completion功能項
- 在右側配置介面選中All letters
- 在右側配置介面把Match case(匹配大小寫)前面的√去掉,

- IntelliJ IDEA 的程式碼提示和補充功能有一個特性:區分大小寫。如上圖示註所示,預設就是 First letter 區分大小寫的。
- 區分大小寫的情況是這樣的:比如我們在 Java 程式碼檔案中輸入 stringBuffer, IntelliJ IDEA 預設是不會幫我們提示或是程式碼補充的,但是如果我們輸入 StringBuffer 就可以進行程式碼提示和補充。
設定取消單行顯示標籤頁(Tabs)的操作
什麼是單行顯示
如何設定為多行?

效果如下

Editor-Font
修改當前主題程式碼編輯區的字型

預設字型、字型大小、字型行間距,都可以單獨設定
Editor-Color Scheme
修改當前主題控制檯輸出的字型

修改程式碼中註釋的字型顏色

Editor-Code Style
設定超過指定 import 個數,改為*

Editor-File and Code Template
修改類頭的文件註釋資訊

效果如下

Editor – File Encodings
設定專案檔案編碼

Transparent native-to-ascii conversion 主要用於轉換 ascii,一般都要勾選, 不然 Properties 檔案中的註釋顯示的都不會是中文。
設定當前原始檔的編碼


對單獨檔案的編碼修改還可以點選右下角的編碼設定區。如果程式碼內容中包含中 文,則會彈出如上的操作選擇。其中:
- Reload 表示使用新編碼重新載入,新編碼不會儲存到檔案中,重新開啟此文 件,舊編碼是什麼依舊還是什麼。
- Convert 表示使用新編碼進行轉換,新編碼會儲存到檔案中,重新開啟此檔案, 新編碼是什麼則是什麼。
- 含有中文的程式碼檔案,Convert 之後可能會使中文變成亂碼,所以在轉換成請 做好備份,不然可能出現轉換過程變成亂碼,無法還原。
Build、Execution、Deployment
設定自動編譯
Intellij Idea 預設狀態為不自動編譯狀態,執行專案的時候才會進行編譯,Eclipse 預設為自動編譯。
不能自動編譯是什麼效果?
圖中分別是Hello.java和編譯後的class檔案的對比
修改Java原始碼,因為不能自動編譯,所以class檔案是不會有變化的
IDEA模式是執行時編譯,所以我們執行主函式,之後可以看到如下結果
下面我們來設定自動編譯,看一下效果
IDEA設定自動編譯

自動編譯的效果
修改原始碼
稍等一會兒然後開啟class檔案可以看到如下效果
其他
設定為省電模式

如上圖所示,IntelliJ IDEA 有一種叫做 省電模式 的狀態,開啟這種模式之後 IntelliJ IDEA 會關掉程式碼檢查和程式碼提示等功能。所以一般也可認為這是一種閱讀模式,如果你在開發過程中遇到突然程式碼檔案不能進行檢查和提示,可以來看看這裡是否有開啟該功能。
設定程式碼分屏展示

效果如下

還可以新增分屏快捷鍵

背景圖設定
- 在idea中 雙擊shift 出現搜尋框 輸入: Set Background Image 單擊 Set Background Image

2.選擇要新增的圖片的路徑,設定透明度,點選OK 就可以檢視效果了

效果如下

IDEA 當前專案結構設定 Project Structure
專案結構配置就是關於當前模組的配置,只對當前模組生效,例如Jar包,包結構,原始碼資料夾,輸出路徑,依賴和專案構建資訊。
如何開啟 Project Structure 頁面

Project Structure 頁面結構講解

project

Modules
可以檢視每一個子模組的資訊

Artifacts
IDEA帶包配置,有時候用IDEA打的包有問題,部署到Tomcat中跑不起來,可以再打包一次。

Facets
當前專案配置檔案的相關資訊
修改IDEA預設設定

總結
以上就是我總結的IDEA開發常見的所有配置,如果本文對你有幫助,不要忘了收藏點贊支援一些。
關於IDEA的外掛和一些使用技巧,請持續關注。
