前言
C: 古語(yǔ)有云:"工欲善其事必先利其器"。我們?cè)谏弦黄_始編寫第一個(gè) Java 程序,體驗(yàn)過了一些單詞大小寫引發(fā)的"磕磕絆絆",還體驗(yàn)了來自中文輸入法的深深"惡意"。
那么我們對(duì)它們就沒治了嗎?只能到最后運(yùn)行或單獨(dú)調(diào)試才能知道錯(cuò)誤嗎?實(shí)際上對(duì)于這種語(yǔ)法型錯(cuò)誤,我們可以使用專業(yè)的工具,在代碼編寫過程中隨時(shí)解決掉,這種專業(yè)工具被稱為:IDE。
今天查老師將帶著你領(lǐng)略一款成熟且有魅力的 Java 系 IDE。

IDE(集成開發(fā)環(huán)境)
IDE概述
在前言中,查老師已經(jīng)簡(jiǎn)單的說了一下 IDE 的能力,它們除了可以有效解決你的上述問題,還能讓你編譯和運(yùn)行程序更便捷(提升開發(fā)效率),尤其使用上快捷鍵之后,可能鼠標(biāo)都將"失業(yè)"!但是前期,查老師建議你,不要著急使用 IDE 的快捷鍵,先練練打字速度和完整語(yǔ)法吧。

主流IDE介紹
我們現(xiàn)在是學(xué)習(xí) Java 語(yǔ)言的,所以自然要選擇適合 Java 開發(fā)的 IDE。目前業(yè)內(nèi)主流的 Java IDE 有這么幾個(gè)。
-
開源免費(fèi)的
Java IDE,由Eclipse基金會(huì)負(fù)責(zé)維護(hù),為各種編程語(yǔ)言都開發(fā)了對(duì)應(yīng)的版本或插件。在查老師看來,它的軟件體積和使用方式比較適合初期和入門的編程人員。day02_1_2 -
收費(fèi)但很多"白嫖學(xué)習(xí)黨"在用的
Java IDE,它所屬的公司JetBrains也開發(fā)了適配各種編程語(yǔ)言的 IDE 版本。例如:適合前端開發(fā)的WebStorm,適合PHP開發(fā)的PhpStorm,適合Python開發(fā)的PyCharm等,同樣都是"價(jià)格不菲"。所以在正版收費(fèi)和破解學(xué)習(xí)的斗爭(zhēng)上,國(guó)內(nèi)開發(fā)者們還需要走很遠(yuǎn)很遠(yuǎn)。 -
收費(fèi)但很多"傳統(tǒng)公司"還在用的
Java IDE,這個(gè)軟件看名字就知道和Eclipse脫不了關(guān)系,的確是這樣的。它出身于Eclipse社區(qū),你可以理解為它是 Genuitec 公司為Java EE開發(fā)者們開發(fā)的 VIP 版本,對(duì)Java EE支持比較友好。其實(shí)學(xué)會(huì)了Eclipse之后,MyEclipse基本就差不多了。day02_1_3 -
免費(fèi),微軟大廠出品,本質(zhì)上是一個(gè)編輯器,不算是
IDE。但是,國(guó)外用的挺多,需要自己安裝插件進(jìn)行配置才能支持更多的功能,對(duì)于新手來說還是比較麻煩的。
查老師有話說: 關(guān)于
IDE具體哪個(gè)好,查老師最后委婉一下:所處學(xué)習(xí)階段,"經(jīng)費(fèi)",個(gè)人習(xí)慣、公司團(tuán)隊(duì)等決定了使用哪一個(gè),查老師個(gè)人只是從市場(chǎng)行情來帶大家選擇性學(xué)習(xí),沒有引起"IDE圣戰(zhàn)"的意思。
沒落的王族IDE
在程序開發(fā)過程中,得心應(yīng)手的 IDE 永遠(yuǎn)令人著迷。在眾多 Java IDE 中,如果單純從初期學(xué)習(xí)建議和情懷角度評(píng)論的話,查老師更喜歡 Eclipse 。免費(fèi) ,擴(kuò)展性良好,初期使用體驗(yàn)不錯(cuò),比較簡(jiǎn)單,這些都是查老師推薦給初期開發(fā)者的理由。
雖然近兩年在中高級(jí)開發(fā)中有所沒落,但是不妨礙我們?cè)诔跗趯W(xué)習(xí)一下。
Eclipse概述
好的,我們?cè)賮砘仡櫼幌?Eclipse ,剛才驚鴻一瞥可能沒留下太多印象。Eclipse 是一個(gè)開源免費(fèi)的 Java IDE,由 Eclipse 基金會(huì)負(fù)責(zé)維護(hù),為各種編程語(yǔ)言都開發(fā)了對(duì)應(yīng)的版本或插件。在查老師看來,它的軟件體積和使用方式比較適合初期和入門的編程人員。

在 2020 年年初的時(shí)候,Jrebel 發(fā)布了 《2020年 Java 技術(shù)報(bào)告》,從來自全球 Java 開發(fā)專業(yè)人員的近 400 份回復(fù)中對(duì) Java 技術(shù)生態(tài)進(jìn)行了統(tǒng)計(jì)分析。其中在 IDE 的使用分析報(bào)告部分,24% 的人使用 Eclipse,僅次于 IntelliJ IDEA。

在 PYPL 的 TOP IDE 熱度排行榜上,Eclipse 則常年霸占第二。(其實(shí)也和 Eclipse 適配了很多編程語(yǔ)言版本,名字都叫 Eclipse 有關(guān))。

這些最新的數(shù)據(jù)看起來也還可以,實(shí)際上在更早前,數(shù)據(jù)還要更加可觀。只不過在2017年左右開始,JetBrains 家的產(chǎn)品在國(guó)內(nèi)開始風(fēng)靡。
例如:隨著 Spring Boot 框架等現(xiàn)代開發(fā)技術(shù)的興起,JetBrains 適配 Java 開發(fā)的 IntelliJ IDEA 產(chǎn)品以更加方便快捷的優(yōu)勢(shì),快速搶占了 Eclipse 的市場(chǎng),Eclipse 的使用者們紛紛"投敵"(但是 Eclipse 在現(xiàn)代開發(fā)方式中表現(xiàn)不爭(zhēng)氣,能咋辦?很多程序員都是從 Eclipse 跳到IDEA,然后回不去了)。下面是近期 IntelliJ IDEA 與 Eclipse 的話題討論,管中窺豹,可見一斑。

好了,簡(jiǎn)單說這些,就是讓你了解一下現(xiàn)狀,見見"世面",不至于懵頭懵腦的。
本篇畢竟是 Eclipse 的主場(chǎng),查老師也不再過多給你介紹其他 IDE 產(chǎn)品。想知道更多的,關(guān)于 Eclipse 在不同語(yǔ)言內(nèi)的生態(tài)地位對(duì)比,自己度娘即可。
Eclipse下載
接下來我們準(zhǔn)備下載 Eclipse,Eclipse 官網(wǎng)有兩種下載方式,一種是 Installer(exe 安裝包,引導(dǎo)型安裝),另一種是 Package (zip 包,解壓就可以使用,類似于綠色軟件)。
查老師個(gè)人建議以 Package 形式下載,點(diǎn)擊下載Eclipse Zip版。
下載前一定要牢記好三個(gè)注意:
-
注意要下載的
Eclipse與安裝的JDK版本是否契合可查看 Eclipse官方介紹。
Eclipse版本 首發(fā)時(shí)間 JDK版本 Eclipse 4.5 (Mars火星) 2015年6月24日 1.7 Eclipse 4.6 (Neon霓虹燈) 2016年6月22日 1.8 Eclipse 4.7 (Oxygen氧氣) 2017年6月28日 1.8及以上,1.9建議選擇4.7.1a 及以上 Eclipse 4.8 (Photon光子) 2018年6月27日 1.8及以上 Eclipse 4.9 (2018-09) 2018年9月19日 1.8及以上 .......... .......... .......... Eclipse 4.15 (2020-03) 2020年3月18日 1.8及以上,不再支持32位JVM 注意要下載的
Eclipse與安裝的JDK位數(shù)是否契合(要么都是32位,要么都是64位)注意要下載的
Eclipse與你的電腦系統(tǒng)和位數(shù)是否契合
我們現(xiàn)在用的 JDK 8,下載當(dāng)前的最新版 Eclipse(2020-03版本)就可以了。
時(shí)間在更替,查老師指的最新版未來不一定是現(xiàn)在這個(gè),但是查老師僅在變動(dòng)比較大時(shí),會(huì)再進(jìn)行內(nèi)容更新,所以選擇你打開時(shí)的最新版即可。

在下載確認(rèn)頁(yè)面,我們可以點(diǎn)擊 Select Another Mirror 選擇其他的鏡像源,可以選擇國(guó)內(nèi)的鏡像源,不然下載太慢了。

點(diǎn)擊后進(jìn)入 Eclipse 捐獻(xiàn)頁(yè)面,國(guó)外盛行捐贈(zèng)文化,用來支持這些非盈利組織。不打算捐贈(zèng)就在頁(yè)面等一會(huì)兒,這個(gè)頁(yè)面按理應(yīng)該會(huì)自動(dòng)開始下載或彈出下載提示,如果沒有開始,你直接點(diǎn)擊下圖的 click here 也可以開始下載。

等待一會(huì)兒,一個(gè) Eclipse 的 zip 安裝包就下載好了。

Eclipse安裝
查老師剛才的下載方式,下載的就是 zip 格式的壓縮包。它就像你平時(shí)下載的一些破解版綠色軟件一樣,不需要雙擊 .exe 安裝程序進(jìn)行引導(dǎo)安裝,只需要解壓就可以使用。
右鍵點(diǎn)擊壓縮包,尋找個(gè)位置解壓,查老師還是希望你將其放到你統(tǒng)一的開發(fā)軟件安裝目錄(例如:查老師之前建議的 develop 文件夾)。

去掉勾選,否則提取的內(nèi)容額外帶一個(gè)壓縮包同名文件夾。

解壓后,找到解壓的位置。其中 .exe 結(jié)尾的就是啟動(dòng)程序。為了方便以后快速打開,可以右鍵在彈出的菜單中將其發(fā)送到桌面快捷方式。

然后我們雙擊這個(gè) .exe程序,或者雙擊快捷方式就可以打開 Eclipse 了。

只要你上面三條下載注意都核查過了,并且 JDK 的 JAVA_HOME 配置按照查老師要求做了,理論上不會(huì)出現(xiàn)別的毛病。沒配置好 JAVA_HOME 時(shí),下方就是結(jié)果。
查老師有話說: 如果你是
win 10還可能會(huì)出現(xiàn)一些兼容性問題:我們環(huán)境變量明明配置好了,但是還是提示下圖,這時(shí)候需要你再次去看一下JAVA_HOME,甚至不用動(dòng),去看環(huán)境變量然后確定關(guān)閉即可,這個(gè)問題曾經(jīng)在部分同學(xué)那兒多次出現(xiàn)。eclipse_1_13
打開之后,第一個(gè)彈出的窗口會(huì)要求你選擇或輸入一個(gè)文件夾地址作為工作空間,文件夾不存在時(shí)會(huì)自動(dòng)創(chuàng)建。Eclipse 會(huì)使用此工作空間存儲(chǔ)你的代碼、項(xiàng)目和一些配置。
注意:如果切換工作空間,那么你的配置等都需要重新設(shè)置,不同的工作空間是相互獨(dú)立的。

進(jìn)入之后,則來到了歡迎界面,點(diǎn)擊關(guān)閉 Welcome選項(xiàng)卡 進(jìn)入程序主界面。

Eclipse初始配置
好工具想使用好,也得調(diào)一調(diào)。
視圖窗口配置
進(jìn)入了主界面,自然意味著我們安裝成功了。本身我們下載的就是適配 Java EE 開發(fā)的 Eclipse,所以打開之后,Eclipse 默認(rèn)就處于 Java EE 視圖下。但是查老師喜歡在 Java 視圖操作,所以我們需要切換一下視圖。不同的視圖模式,一些窗口和菜單顯示也不太一樣,建議初期先用Java 視圖模式。

點(diǎn)擊 Open Perspective 按鈕,在彈出的對(duì)話框中,選中 Java,然后點(diǎn)擊 Open,則切換到了Java 視圖模式。


可以在以后學(xué)習(xí)使用中,逐漸關(guān)閉一些自己用不上的選項(xiàng)卡窗口,也可以隨意調(diào)整每個(gè)選項(xiàng)卡窗口的位置。如果弄亂了,不用怕,直接在右上角視圖名上右擊,選擇 Reset(重置) 即可回到視圖窗口初始的狀態(tài)。

另外還可以在 Window 菜單的 Show View 選項(xiàng)中去添加一些自己需要的選項(xiàng)卡窗口。
例如:我們之后常用的 Console 控制臺(tái)。

最后初步調(diào)整后的窗口效果如下,你們后面使用久了,然后按自己習(xí)慣調(diào)整就好了。

字符編碼配置
Eclipse 中默認(rèn)使用 GBK 作為字符編碼,但是為了解決我們之后開發(fā)的編碼問題,我們要求統(tǒng)一字符編碼的配置,將默認(rèn)的字符編碼更改為 UTF-8。因?yàn)檫@種字符編碼具有更好的適用性,對(duì)于漢語(yǔ)和外語(yǔ)支持都比較好。
點(diǎn)擊 Window > Preferences(首選項(xiàng)),Eclipse 的所有設(shè)置基本都在這里。

在搜索框輸入 workspace,然后選擇圖示的選項(xiàng),在右側(cè)的窗口中設(shè)置文本文件編碼為 Other > UTF-8,然后點(diǎn)擊 Apply and Close(應(yīng)用并關(guān)閉)。

字體配置
最后一個(gè)配置,寫代碼沒有一個(gè)合適的字體及大小怎么行?
再次打開首選項(xiàng)窗口,依次點(diǎn)擊 General > Appearance > Colors and Fonts > Basic,然后點(diǎn)擊 Basic 里的最后一項(xiàng) Text Font(文本字體),雙擊或者點(diǎn)擊 Edit(編輯) 進(jìn)入修改界面。


一般來講,字體都是使用默認(rèn)值 Consolas,只是簡(jiǎn)單改改大小,方便查看而已,選完之后,一直點(diǎn)確定即可應(yīng)用成功。
查老師有話說: 實(shí)際上,Eclipse 現(xiàn)在已經(jīng)支持在文本編輯時(shí),通過
Ctrl加+號(hào)或-號(hào)來調(diào)整編輯區(qū)的文字大小了,這一步其實(shí)可以不用這么麻煩了。

另外 JetBrains 為開發(fā)者設(shè)計(jì)了一套字體,據(jù)說可以降低眼疲勞,有需要的從 JetBrains 官網(wǎng)下載JetBrains Mono字體安裝即可。

用Eclipse開發(fā)Java程序
調(diào)也跳完了,接下來我們使用 Eclipse 來開發(fā)一個(gè) Hello World 程序,看看它比我們第一章是不是要簡(jiǎn)單一些?
用 Eclipse 開發(fā) Java 程序,可以分為4個(gè)步驟:
創(chuàng)建一個(gè) Java 項(xiàng)目(一個(gè)復(fù)雜的程序肯定需要很多源代碼文件,我們以項(xiàng)目為單位來組織這些源文件)
手動(dòng)創(chuàng)建 Java 源程序
編譯 Java 源程序(在 Eclipse 中此步驟是自動(dòng)的)
運(yùn)行 Java 程序
首先,我們打開配置好的 Eclipse,點(diǎn)擊 File 菜單,選擇 New 子菜單中的 Java Project 來創(chuàng)建一個(gè)新的 Java 項(xiàng)目。

輸入項(xiàng)目名稱,然后確認(rèn)下是否自動(dòng)指定好了 JRE運(yùn)行庫(kù)(JAVA_HOME配置沒有問題的話,應(yīng)該無(wú)異常),此項(xiàng)內(nèi)容很關(guān)鍵,決定是否能正常編寫代碼和編譯運(yùn)行。

下圖就是一個(gè)創(chuàng)建好的基本 Java 項(xiàng)目。

那我們之前編寫的源代碼這時(shí)候要在哪里寫?答案是在 src(source) 源碼目錄下編寫。但是別直接就在 src 根目錄下創(chuàng)建源文件,查老師要求你先創(chuàng)建一個(gè)包組織 Package(現(xiàn)在知道它是分類存放源文件的文件夾就可以了)。
查老師有話說:
Package的命名是由公司域名的倒序組成的,例如:百度公司寫com.baidu.xxx,并且包名的單詞全部小寫。
右擊 src 目錄,然后 New 一個(gè) Package,輸入一個(gè)自定義包名,然后 Finish。


創(chuàng)建好包后,然后右擊 包名 進(jìn)行創(chuàng)建類的操作,這一步才是上一篇我們直接寫過的東西。


創(chuàng)建好了,是不是和上篇寫的一模一樣了,但你發(fā)現(xiàn) pulic class xxx 類聲明這部分現(xiàn)在是用Eclipse 快速完成的,你不用再寫它了,直接寫程序入口 main 方法和內(nèi)容就可以了。
編寫過程中,如果停下來,這時(shí)候沒寫完呢,Eclipse 會(huì)提示報(bào)錯(cuò),這很正常,寫完并保存后再看還報(bào)不報(bào)錯(cuò)。

一頓火花帶閃電的代碼敲寫,很舒服的把上篇的內(nèi)容寫完了,而且還有高亮及部分回車自動(dòng)縮進(jìn)的功能。

輸入完代碼后,上章節(jié)我們需要 javac 先編譯然后才能用 java 來運(yùn)行這代碼,現(xiàn)在有了Eclipse,直接在代碼空白處右擊,在彈出的菜單中選擇 Run As > Java Application即可運(yùn)行了(Eclipse幫你自動(dòng)編譯了)。


查老師有話說: 其實(shí)
Eclipse還是在按照我們上篇的形式干活,只不過很多東西幫我們歸了歸類,做了些自動(dòng)處理。
你自己打開設(shè)定的工作空間地址,你會(huì)發(fā)現(xiàn)你剛創(chuàng)建的 Java 項(xiàng)目,實(shí)際就是一個(gè)特殊的多級(jí)文件夾。所以也無(wú)需擔(dān)心玩不轉(zhuǎn) Eclipse,沒你想的那么難,慢慢來,熟練就好了。


后記
到這里,Eclipse 的初步認(rèn)識(shí)就結(jié)束了。Eclipse 還支持更改主題,自己有興趣可以了解一下。其他的配置,未來我們需要的時(shí)候,就會(huì)進(jìn)行對(duì)應(yīng)講解,目前已經(jīng)夠了。
另外再提示一點(diǎn):前期很多同學(xué)喜歡使用漢化版的軟件,但是殊不知,在眾多 IDE 中,中文的并不是很多,養(yǎng)成依賴之后尤為可怕,所以有“漢化一時(shí)爽,xxxx”一說。
對(duì)于我們來講,編程語(yǔ)言大多是英文的,如果我們連使用工具都要用中文,不僅顯得不專業(yè),而且也浪費(fèi)了大好的學(xué)習(xí)英文的機(jī)會(huì)!
所以謹(jǐn)記查老師的勸告,切勿漢化。

Eclipse 還有一段傳聞:據(jù)說是當(dāng)初的 SUN 公司名稱縮寫是 太陽(yáng) 的意思,而且 SUN 公司因?yàn)?code>Java 的原因真的是如日中天,在互聯(lián)網(wǎng)行業(yè)首屈一指,于是 IBM 希望能出一款產(chǎn)品來蓋過太陽(yáng)的光芒,所以起名為 eclipse(日蝕)。
孰真孰假,不得而知。只是這個(gè)將伴隨我們很久的開源 IDE,請(qǐng)記得善待它。
查老師有話說: 對(duì)于技術(shù)的學(xué)習(xí),查老師一貫遵循的步驟是:先用最最簡(jiǎn)單的 demo 讓它跑起來,然后學(xué)學(xué)它的最最常用 API 和 配置讓自己能用起來,最后熟練使用的基礎(chǔ)上,在空閑時(shí)嘗試閱讀它的源碼讓自己能夠洞徹它的運(yùn)行機(jī)制,部分問題出現(xiàn)的原因,同時(shí)借鑒這些技術(shù)實(shí)現(xiàn)來提升自己的代碼高度。
所以在查老師的文章中,前期基本都是小白文,僅僅穿插很少量的源碼研究。當(dāng)然等小白文更新多了,你們還依然喜歡,后期會(huì)不定時(shí)專門對(duì)部分技術(shù)的源碼進(jìn)行解析。


