IntelliJ使用指南—— 深刻理解IntelliJ的Web部署邏輯java
Intellij IDEA 部署Web項目,解決 404 錯誤git
Intellij IDEA快捷鍵的使用github
本文轉載地址web
本人使用IntelliJ IDEA其實並不過久,用了這段時間之後,以爲的確非常好用。剛剛從Eclipse轉過來的不少人開始可能不適應,我就把使用過程當中的一些經驗和經常使用功能分享下,固然在看這篇以前推薦你先看完IntelliJ IDEA 的 20 個代碼自動完成的特性,這篇文章對自動完成的特性介紹的很是好,只是快捷鍵說明部分還能夠更完善一些,能夠照顧下默認綁定鍵位不一致的童鞋。本文在說明快捷鍵的時候是根據Mac OSX 10.5+的默認keymap,固然也會提供相關的文字說明,若是和個人綁定不一致的能夠直接去keymap中搜索便可。vim
這個之前在Eclipse中是個很簡單的問題,轉移到IntelliJ上之後的一些人也問過這個問題。使用一樣的方式設置了之後發現只是對當前文件起做用了,打開另一個文件依然沒有行號。就比如你只是在vim中執行命令set number
,而不是在.vimrc中設置同樣的效果。這個是須要在IDE Settings中設置下的,如圖所示勾選便可: 其餘設置可參照該設置項勾選便可,例如顯示空格等等.tomcat
咱們在寫代碼的時候常常須要打開某個文件的時候,想在左邊的文件樹上自動打開關聯到位置,這樣很方便的找尋本目錄下的其餘文件或者其餘的相關文件,其實這個IntelliJ提供了好幾種解決方案,第一個就是和Eclipse同樣的方式,以下:服務器
AutoScroll to Source
和AutoScroll from source
,IntelliJ很人性化的分了兩個設置在裏面,你兩個都勾選就是基本和Eclipse的功能保持了徹底一致,只是勾選一個天然也能夠.還有一種方式就是利用IntelliJ提供的Navigation Bar,IntelliJ不少功能操做均可以鍵盤化,這個就是喜歡鍵盤化操做的人的必備功能,操做方式就是打開文件的時候,使用快捷鍵 alt+home健 ⌘+UP (Jump to Navigation Bar)
,而後就會出現一個下拉,基本就是這個文件所在目錄的文件列表,還可使用上下左右的鍵位來選擇其餘目錄,是否是很酷?eclipse
備註:此處建議把View > Navigation Bar
的選項點掉,這樣就使用快捷鍵以後就會在你鼠標的位置出現,感受會更輸入一些,固然這樣你就基本失去了使用鼠標的權利,這個須要你根據我的癖好使用便可。jsp
若是你是蘋果電腦用戶的話,建議你改爲Mac OSX 10.5+的鍵位綁定,由於Mac OSX 10.5這個兼容Windows的版本的鍵位實在是太蹩腳了,用着是真難受,比如你默認習慣⌘+w
是關閉標籤,在這個鍵位綁定中居然是根據符號選擇文本的一個快捷鍵.maven
這裏主要介紹幾個可能你們經常使用的,或者是你可能並不知道IntelliJ中有的幾個快捷鍵,特別經常使用的你直接參照官網的Keymap介紹Getting Started就能夠了。學會在Keymap中本身查詢須要的快捷鍵是主要的,不要每次都打開那個沒用的百度,具體能夠參照本文最後給出的連接。
之前在Eclipse中用的不少的一個快捷鍵就是ctrl+o
,這樣能夠調出代碼文件的全部成員變量和方法,而且能夠支持搜索非常方便,IntelliJ這種基本的功能天然是有,新手的話還常常問,這個在IntellJ中的快捷鍵是⌘+F12 (File Structure)
。若是你不是Mac OSX 10.5+鍵位綁定的話,小括號中的內容就是你能夠去Keymap中去搜索的內容。
ctrl+alt+Up
,IntelliJ默認是⌘+D (Duplicate Line or Block)
,其實這個和Eclipse中的有差距,尤爲是多行的時候或者選中內容的時候,不信你能夠試試。因此你能夠把Keymap中的Duplicate Lines
定義上一個快捷鍵,我定義的是Option+D
,這個鍵位在個人默認綁定中是沒任何快捷鍵的,你能夠本身綁定一個試試。<name>SpringSource Milestones Proxy</name>
你光標在Milestones中的某一個位置,你想替換SpringSource Milestones Proxy
爲其餘單詞,假設想替換爲Test XX
,其實這樣你只須要Option+Up (Select Word at Caret)
兩下就能夠選中你想要的單詞了,當你想在開發過程當中,你會發現這個鍵位用的太多了,多到換了其餘沒有這個鍵位的編輯器或者IDE上,非常不習慣。⌘+delete (Delete Line)
或者利用IntelliJ智能的功能,剪切的快捷鍵,當本行選中文本的時候剪切`⌘+x
會按照選中的文本實現剪切,可是你本行內無任何選中文本的時候會自動剪切整行,那麼天然就相似一個刪除本行的快捷鍵,可是這個其實仍是比較蹩腳的,建議使用⌘+delete
。⌘+option+鼠標單擊
或者⌘+option+B
。智能自動完成 ctrl+shift+Space
,當給你的提示太多的時候,這個鍵絕對會給你驚喜.ctrl+k
,這個挺好用的,在IntelliJ中也不缺這個功能,可是在Mac OSX 10.5+的鍵位綁定中默認爲空。聽說Windows的默認綁定中是有綁定的,本身能夠查詢下,我本身綁定了一個⌘+ctrl+k (Find Word at Caret)
,沒有的須要本身綁定一個,而後還能結合其餘的鍵位實現上一個⌘+G (Find Next)
下一個⌘+Shift+G (Find Previous)
的功能.非常實用。咱們開發確定是有版本控制的,你們之前Eclipse的時候在本地文件和版本庫不一致的時候,那麼文件以及所在的文件夾都會出現一個〉
表示,你們能很輕鬆的看到本地文件修改了哪一些,可是IntelliJ中默認是不能這樣的。僅僅是給變化的文件在修改的時候提供了顏色上的變化,不包括其所在的各個父級文件夾哦,若是想和Eclipse同樣的話須要以下圖把設置勾選就能夠了
其實看英文解釋就能夠明白了,這個默認開啓之後若是想調整文件夾的顯示顏色的時候就直接去Settings > Editor > Colors & Fonts > File Status
中調整便可了,能夠調整成本身喜歡的樣子。
IntelliJ在資源文件這方面我的以爲也是完勝Eclipse的,在Resource Bundle方式下想修改一個屬性是至關方便的,能夠在一個操做界面上修改全部語言的屬性,這一切都是自動完成的,以下圖所示:
而且還很貼心的有一個排序和分組的功能,尤爲是這個排序。
默認設置下也有一個問題,就是中文默認會顯示爲Unicode碼的,其實勾選一個設置(Settings > File Encodings
)就能夠了,以下圖:
這樣設置之後全部Unicode顯示的就能夠自動轉化爲其應該顯示的語言了.
記得剛開始用Eclipse的時候那時候默認是不支持Java EE項目的,必須使用一個MyEclipse的插件,直到今天好似還有人在用這個玩意,當年的時候每一個Web項目修改以後都必須Deploy一下,修改的東西纔會被執行,非常痛苦。後來就本身利用Tomcat插件,這個能夠保證你修改jsp以及靜態文件的時候不須要Deploy直接就能夠被執行,由於Tomcat的目錄指向其實直接是指向到了你的項目文件,這樣的確省心了不少。
在IntelliJ中若是你是傳統的Java EE的結構(根目錄下面有src,webMoudle這樣的結構),那麼在直接在Run Configurations中添加一個Tomcat便可,點擊+號添加便可(固然須要注意雖然沒搜索框,你輸入字符會自動給你篩選結果),這樣運行的時候修改Java文件的話須要主動Make Project也就是⌘+F9 (Make Project)
.可是若是你是符合maven約定的項目結構的話若是繼續這樣配置就很不理想了,每次修改了jsp文件居然也須要Make Project才能夠,由於每次Make Project之後IntelliJ會自動給你DeployMent,這樣好似又回到了幾年前那種很麻煩的環境.
這個問題其實很容易解決,就是不要使用這種方式來運行你的web項目,既然符合maven結構的項目天然是使用maven或者gradle這種構建工具了,那麼你須要利用maven的jetty的插件來運行項目便可了,以下圖配置便可:
固然你也能夠以下圖直接點擊運行就會自動添加一個:
參看上圖其實也沒必須非用jetty,用tomcat6或者tomcat7的插件運行也能夠。
鑑於有一些用戶還沒轉型Maven等來構建項目,固然我也衷心的說一句,構建這塊仍是趕忙轉了吧.由於不轉的話還單獨出來這個章節,而且有的操做仍是至關麻煩,下面也會講到,仍是一一道來吧,導入的時候有兩個選擇而後我分兩個部分說明,點擊File > Import Project…
,而後選擇你的項目目錄,點擊OK,以下圖:
這個方式圖中所示的第一種,導入基本就是一路next到完成,可是你第一次也能夠費點心思注意下每一步作了啥,例如幫你分析了jar有哪一些,若是你使用了Spring還給你分析你的全部配置文件。最後完成之後項目就開始構建索引,等一切就緒之後咱們就能夠完成的基本配置了,因爲是web項目基本上可以在Tomcat等服務器上跑起來就基本算成功了。主要幾個點:
打開File > Project Structure
,本節咱們主要用到下圖幾個標紅的部分:
咱們先了解下這幾個主要部件:
咱們須要作的配置主要在Modules中,其餘的幾個本身根據理解配置便可。
這些步驟完成之後咱們就能夠點擊Run > Edit Configurations
,點擊左上角的+號,而後選擇**Tomcat > Local Server **,這些步驟和Eclipse相似,選擇相應路徑等等,只須要注意一點就能夠,就是須要添加一個DeployMent,以下圖:
若是是Windows的圖中的DeployMent中的+號多是在右側,點擊以後會彈出對話框選擇文件夾,選擇eclipse默認的webMoudle文件夾便可(MyEclipse就是WebRoot文件夾),這個必定不能選錯,不要選成項目的主文件夾,不然運行就不成功了,再而後ctrl+R
運行便可。以debug方式運行就是ctrl+D
。
基本參照上個基本都相似,就是步驟比上個步驟要少點,若是出現問題參照上個章節便可。
之前Eclipse有個HQL的插件能夠直接輸入HQL語法,查詢測試結果是否正確,在IntelliJ中你也能夠,不過不須要任何插件默認提供支持的,若是在導入項目的時候沒有自動添加Hibernate的支持的話,那須要添加一下Hibernate的支持,鼠標選中項目,點擊右鍵以下圖:
點擊選擇Hibernate便可,若是沒有Hibernate應該是項目已經自動添加了Hibernate的支持了。而後完成之後就能夠以下圖操做便可:
選中上面HQL圖標,在出來的控制檯輸入你想輸入的HQL便可了,同樣能夠自動完成的哦。
⌘+s
(這個鍵位默認是保存全部),因此須要注意不要隨手不當心把某個文件改了下,而後直接關閉標籤了,其實你的無心的操做已經致使修改了文件,可能致使你在項目運行的時候發現一個很離奇的錯誤,我暫時沒發現能夠關閉自動保存的設置,若是你對此非有強迫症的話,vim的插件可能會幫助到你。File
下面,有個奇怪的Power Save Mode,這裏也說明下,這個顧名思義是省電模式。當你勾選此模式之後,IntelliJ不會給你完成任何自動完成的功能,例如原本你輸入一個字符會自動提示的,勾選之後就沒有了,若是出現此問題的話能夠考慮是否是本身手賤點過這個按鈕噢,這個仍是比較適合開會的時候無聊看代碼用的,又省電又不影響你看代碼。F2
的功能,能夠查看到Java文件定義,你在Spring的配置文件中可能須要配置這個值,可是在IntelliJ中這個是不須要的,由於對於Spring這樣的支持非常完善,你只須要在class的屬性中輸入class的名字而後ctrl+空格 (Basic 這個在code的completion下面)
自動就完成了全路徑,在智能的條件下可能就不須要蹩腳的實現。⌘+s
,不過問題就是無論什麼文件都會執行這個宏,不只僅是java文件,我就是利用這個宏主要完成把tab轉爲空格。⌘+shift+up/down (Stretch to Top / Bottom)
,固然其餘的project視圖等的也均可以利用這個快捷鍵配置上下左右的方向鍵來配置使用,方便的很,強烈推薦使用。第一次發文,若是有什麼問題歡迎留言交流,原始文檔放在github上,各位若是也有一些技巧不妨共同完善下本文檔。只須要Fock而後Pull Request就能夠了,若是你以爲有個github賬號過於麻煩的話,那我我的以爲你仍是轉行比較合適。若是不想更新只是想訂閱持續更新的內容,只須要Watch該項目便可。還能夠對項目Star,這樣你就能夠在本身的賬號頁面快速找到本項目。