概述
IDEA(https://www.jetbrains.com/idea/),全稱IntelliJ IDEA
JetBrains 公司的產品。
強大的Java 語言的集成開發(fā)環(huán)境,IDEA 在業(yè)界被公認為是 最好的 java 開發(fā)工具之一,尤其在智能代碼助手、代碼自動提示、重構、J2EE 支持、Ant、JUnit、CVS 整合、代碼審查、創(chuàng)新的 GUI 設計等方面的功能可以說 是超常的。
IDEA 有兩個版本:旗艦版(Ultimate)和社區(qū)版(Community)。 旗艦版收費(限 30 天免費試用),社區(qū)版免費
IDEA的優(yōu)勢
1 強大的整合能力。比如:Git、Maven、Spring 等
2 提示功能的快速、便捷
3 提示功能的范圍廣
4 好用的快捷鍵和代碼模板
5 精準搜索
目錄
bin:容器,執(zhí)行文件和啟動參數(shù)等
help:快捷鍵文檔和其他幫助文檔
jre64:64 位java 運行環(huán)境
lib:idea 依賴的類庫
license:各個插件許可
plugin:插件
bin目錄下
idea.exe 32位IDEA啟動文件
idea.exe.vmoption 32位IDEA的VM配置文件
idea.properties IDEA的屬性配置文件
idea64.exe 64位IDEA啟動文件
idea64.exe.vmoption 64位IDEA的VM配置文件
注意:
- 根據(jù)電腦系統(tǒng)的位數(shù),選擇32位的VM配置文件或者64位的VM配置文件
- 32位操作系統(tǒng)內存不會超過 4G,所以沒有多大空間可以調整,建議不用調整了
- 64位操作系統(tǒng)中 8G 內存以下的機子或是靜態(tài)頁面開發(fā)者是無需修改的。
- 64位操作系統(tǒng)且內存大于 8G 的,如果你是開發(fā)大型項目、Java 項目或是 Android 項目,
建議進行修改,常修改的就是下面 3 個參數(shù):
-Xms128m,16G內存的機器可嘗試設置為Xms512m.(設置初始的內存數(shù),增加該值可以提高 Java 程序的啟動速度。)
-Xmx750m,16G內存的機器可嘗試設置為-Xmx1500m(設置最大內存數(shù),提高該值,可以減少內存 Garage收集的頻率,提高程序性)
-XX:ReservedCodeCacheSize=240m
-XX:ReservedCodeCacheSize=500m
(保留代碼占用的內存容量)
config目錄
C:\Users\當前登錄的系統(tǒng)用戶名.IntelliJIdea\config
config目錄是IntelliJ IDEA個性化化配置目錄,或者說是整個IDE設置目錄。IDEA安裝的時候,安裝新版本的IntelliJ IDEA會自動掃描硬盤上的舊配置目錄,指的就是該目錄。這個目錄主要記錄了:IDE 主要配置功能、自定義的代碼模板、自定義的文件模板、自定義的快捷鍵、Project 的 tasks 記錄等等個性化的設置。
system目錄
C:\Users\當前登錄的系統(tǒng)用戶名.IntelliJIdea\system
system 目錄是 IntelliJ IDEA 系統(tǒng)文件目錄,是 IntelliJ IDEA 與開發(fā)項目一個 橋梁目錄,里面主要有:緩存、索引、容器文件輸出等等。
caches:
LocalHistory:文件的歷史更改記錄
與Eclipse比較
IntelliJ IDEA 沒有類似 Eclipse 的工作空間的概念(Workspaces),最大單元就是Project。這里可以把 Project 理解為 Eclipse 中的 Workspace。
創(chuàng)建工程
開始
1,Create New Project:創(chuàng)建一個新的工程
2,Import Project:導入一個現(xiàn)有的工程
3,Open:打開一個已有工程。比如:可以打開 Eclipse 項目。
4,Check out from Version Control:可以通過服務器上的項目地址check out Github上面項目或其他Git托管服務器上的項目
創(chuàng)建模塊(Module)
1,在 Eclipse 中我們有 Workspace(工作空間)和 Project(工程)的概念,在 IDEA 中只有 Project(工程)和 Module(模塊)的概念。這里的對應關系為:
IDEA 官網(wǎng)說明:
An Eclipse workspace is similar to a project in IntelliJ IDEA
An Eclipse project maps to a module in IntelliJ IDEA
翻譯:
Eclipse中workspace相當于IDEA中的Project
Eclipse中Project相當于IDEA中的Module
- Eclipse是在同一個窗口管理N個項目,IntelliJ IDEA有所不同。IntelliJ IDEA提供的解決方案是打開多個項目實例,即打開多個項目窗口。即:一個 Project 打開一個 Window 窗口。
- 在IntelliJ IDEA中Project是最頂級的級別,次級別是Module。一個Project可以有多個 Module。目前主流的大型項目都是分布式部署的,結構都是類似這 種多Module結構。
常用配置
File-->Settings...
Appearance & Behavior
Theme設置主題:默認提供了三套主題:IntelliJ,Darcula,W indows
快捷鍵
1 執(zhí)行(run) alt+r
2 提示補全 (ClassNameCompletion) alt+/
3 單行注釋 ctrl+/
4 多行注釋 ctrl+shift+/
5 向下復制一行 (DuplicateLines) ctrl+alt+down
6 刪除一行或選中行 (deleteline) ctrl+d
7 向下移動行(move statement down) alt+down
8 向上移動行(move statement up) alt+up
9 向下開始新的一行(start new line) shift+enter
10 向上開始新的一行 (StartNewLinebeforecurrent) ctrl+shift+enter
11 如何查看源碼 (class) ctrl + 選中指定的結構 或 ctrl+shift+t
12 萬能解錯/生成返回值變量 alt + enter
13 退回到前一個編輯的頁面 (back) alt + left
14 進入到下一個編輯的頁面(針對于上條) (forward) alt + right
15 查看繼承關系(type hierarchy) F4
16 格式化代碼(reformat code) ctrl+shift+F
17 提示方法參數(shù)類型(Parameter Info) ctrl+alt+/
18 復制代碼 ctrl+c
19 撤銷 ctrl+z
20 反撤銷 ctrl+y
21 剪切 ctrl+x
22 粘貼 ctrl+v
23 保存 ctrl+s
24 全選 ctrl+a
25 選中數(shù)行,整體往后移動 tab
26 選中數(shù)行,整體往前移動 shift + tab
27 查看類的結構:類似于 eclipse 的 outline ctrl+o
28 重構:修改變量名與方法名(rename) alt+shift+r
29 大寫轉小寫/小寫轉大寫(toggle case) ctrl+shift+y IntelliJ IDEA 的安裝、配置與使用
30 生成構造器/get/set/toString alt +shift + s
31 查看文檔說明(quick documentation) F2
32 收起所有的方法(collapse all) alt+shift+c
33 打開所有方法(expand all) alt+shift+x
34 打開代碼所在硬盤文件夾(show in explorer) ctrl+shift+x
35 生成 try-catch 等(surround with) alt+shift+z
36 局部變量抽取為成員變量(introduce field) alt+shift+f
37 查找/替換(當前) ctrl+f
38 查找(全局) ctrl+h
39 查找文件 double Shift
40 查看類的繼承結構圖(Show UML Diagram) ctrl+shift+u
41 查看方法的多層重寫結構(method hierarchy) ctrl+alt+h
42 添加到收藏(add to favorites) ctrl+alt+f
43 抽取方法(Extract Method) alt+shift+m
44 打開最近修改的文件(Recently Files) ctrl+E
45 關閉當前打開的代碼欄(close) ctrl+w
46 關閉打開的所有代碼欄(close all) ctrl+shift+w
47 快速搜索類中的錯誤(next highlighted error) ctrl+shift+q
48 選擇要粘貼的內容(Show in Explorer) ctrl+shift+v
49 查找方法在哪里被調用(Call Hierarchy) ctrl+shift+h
IDEA模版
(Editor – Live Templates 和 Editor – General – Postfix Completion)
1.Live Templates(實時代碼模板)
配置一些常用代碼字母縮寫,在輸入簡寫時可以出現(xiàn)你預定義的固定模式的代碼,使得開發(fā)效率大大提高,同時也可以增加個性化。
最簡單的例子 就是在 Java 中輸入 sout 會出現(xiàn) System.out.println();
2.Postfix Completion(已有的常用模板)
二者的區(qū)別:Live Templates 可以自定義,而 Postfix Completion 不可以。同時, 有些操作二者都提供了模板,Postfix Templates 較 Live Templates 稍快
舉例:
psvm : 可生成 main 方法
sout : System.out.println() 快捷輸出
類似的:
soutp=System.out.println("方法形參名 = " + 形參名);
soutv=System.out.println("變量名 = " + 變量);
soutm=System.out.println("當前類名.當前方法");
“abc”.sout => System.out.println("abc");
fori : 可生成 for 循環(huán) 類似的:
iter:可生成增強 for 循環(huán)
itar:可生成普通 for 循環(huán)
list.for : 可生成集合 list 的 for 循環(huán)
List<String> list = new ArrayList<String>(); 輸入: list.for 即可輸出
for(String s:list){
}
list.fori 或 list.forr
ifn:可生成 if(xxx = null)
類似的:
inn:可生成 if(xxx != null) 或 xxx.nn 或 xxx.null
prsf:可生成 private static final
類似的:
psf:可生成 public static final
psfi:可生成 public static final int
psfs:可生成 public static final String
修改現(xiàn)有模板:Live Templates
如果對于現(xiàn)有的模板,感覺不習慣、不適應的,可以修改:
修改 1:
通過調用 psvm 調用 main 方法不習慣,可以改為跟 Eclipse 一樣,使用 main 調取。
- Abbreviation:模板的縮略名稱
- Description:模板的描述
- Template text:模板的代碼片段
- 應用范圍。比如點擊 Define。選擇如下:
自定義模板
IDEA 提供了很多現(xiàn)成的 Templates。但你也可以根據(jù)自己的需要創(chuàng)建新的
版本控制(Git)
clone:拷貝遠程倉庫
commit:本地提交
push:遠程提交
pull:更新到本地
斷點調試
常用斷點調試快捷鍵
step over 進入下一步,如果當前行斷點是一個方法,則不進入當前方法體內
step into 進入下一步,如果當前行斷點是一個方法,則進入當前方法體內
force step into 進入下一步,如果當前行斷點是一個方法,則進入當前方法體內
step out 跳出
resume program 恢復程序運行,但如果該斷點下面代碼還有斷點則停在下一個斷點上
stop 停止
mute breakpoints 點中,使得所有的斷點失效
view breakpoints 查看所有斷點
條件斷點
說明:
調試的時候,在循環(huán)里增加條件判斷,可以極大的提高效率。
具體操作:
在斷點處右擊調出條件斷點??梢栽跐M足某個條件下,實施斷點。
查看表達式的值(Ctrl + u):
選擇行,ctrl + u。還可以在查看框中輸入編寫代碼時的其他方法
插件
IntelliJ IDEA 很多功能都是通過插件的方式來實現(xiàn)的。
官網(wǎng)插件庫:https://plugins.jetbrains.com/
安裝:File-->settings-->plugins
三種安裝方式:
Install JetBrains plugin:彈出 IntelliJ IDEA 公司自行開發(fā)的插件倉庫列表,供下載安裝
Browse repositories:彈出插件倉庫中所有插件列表供下載安裝
Install plugin from disk:瀏覽本地的插件文件進行安裝,而不是從服務器上下載并安裝
其他
緩存和索引的清理
IntelliJ IDEA 首次加載項目的時候,都會創(chuàng)建索引,而創(chuàng)建索引的時間跟項目的文件多少成正比。在IntelliJ IDEA 創(chuàng)建索引過程中即使你編輯了代碼也是編譯 不了、運行不起來的,所以還是安安靜靜等IntelliJ IDEA。
IntelliJ IDEA 的緩存和索引主要是用來加快文件查詢,從而加快各種查找、代碼提示等操作的速度,某些特殊條件下,IntelliJ IDEA的緩存和索引文件也是會損壞的,比如:斷電、藍屏引起的強制關機,當你重新打開IntelliJ IDEA,很可能IntelliJ IDEA會報 各種莫名其妙錯誤,甚至項目打不開,IntelliJ IDEA主題還原成默認狀態(tài)。即使沒有斷電、藍屏,也會有莫名奇怪的問題的時候,也很有可能是 IntelliJ IDEA緩存和索引出現(xiàn)了問題,這種情況還不少。遇到此類問題也不用過多擔心。我們可以清理緩存和索引。
File-->Invalidate Caches/Restart...
進入后有如下選擇:
Invalidate and Restart、Invalidate、Cancel、Just Restart
一般建議點擊 Invalidate and Restart,這樣會比較干凈。
警告:清除索引和緩存會使得IntelliJ IDEA的Local History丟失。所以如果項目沒有加入到版本控制,而你又需要你項目文件的歷史更改記錄,那你最好備份下LocalHistory目錄。目錄地址在:C:\Users\當前登錄的系統(tǒng)用戶名.IntelliJIdea\system\LocalHistory建議使用硬盤的全文搜索,這樣效率更高。