Eclipse使用手冊_第1頁
Eclipse使用手冊_第2頁
Eclipse使用手冊_第3頁
Eclipse使用手冊_第4頁
Eclipse使用手冊_第5頁
已閱讀5頁,還剩58頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、Eclipse使用手冊Java IDE工具知識(shí)與技能內(nèi)容提要 1. Eclipse簡介 2. Eclipse Platform 3. Java程序開發(fā) 4. 自定義開發(fā)環(huán)境 5. 建立 JAR 檔案 6 程序調(diào)試 1. Eclipse簡介 Eclipse就像軟件開發(fā)者的打鐵鋪,它一開始備有火爐、鐵鉆與鐵錘。就像鐵匠會(huì)用現(xiàn)有的工具打造新的工具,也能用Eclipse打造新工具來開發(fā)軟件-這些新工具可擴(kuò)充Eclipse的功能。(Eclipse其中一個(gè)賣點(diǎn)就是它的擴(kuò)充性)1.1 歷史背景歷史背景 Eclipse這樣功能完整且成熟的開發(fā)環(huán)境,是由藍(lán)色巨人IBM所釋出。IBM花了4千萬美金來開發(fā)這個(gè)IDE

2、(Integrated Development Environment)。第一版1.0在2001年11月釋出,隨后逐漸受到歡迎。 Eclipse已經(jīng)部分開放源碼(Open Source Project),大部分的開發(fā)扔然掌握在IBM手中,但是有一部份由的軟件聯(lián)盟主導(dǎo)。() Eclipse項(xiàng)目由Project Management Committee(PMC)所管理,它綜觀項(xiàng)目全局,Eclipse項(xiàng)目分成3個(gè)子項(xiàng)目: 平臺(tái)-Platform 開發(fā)工具箱-Java Development Toolkit(JDT) 外掛開發(fā)環(huán)境-Plu

3、g-in Development Environment(PDE) 這些子項(xiàng)目又細(xì)分成更多子項(xiàng)目。例如Platform子項(xiàng)目包含數(shù)各組件,如Compare、Help與Search。JDT子項(xiàng)目包括三各組件:User Interface(UI)、核心(Core)及除錯(cuò)(Debug)。PDE子項(xiàng)目包含兩各組件:UI與Core。 1.2 開放源碼軟件開放源碼軟件 Eclipse是開放源碼軟件,結(jié)果很多人在使用的時(shí)候都不注重合法權(quán)的問題。開放原始碼軟件讓使用者能夠取得軟件的源碼,有權(quán)去修改和散布這個(gè)軟件。如果想修改軟件,這件事的另一面就是,除非其它人對修改后的軟件也有相同的權(quán)力,否則是不能散布修改后的

4、軟件,這種權(quán)利和著作權(quán)(copyright)相反,開放源碼項(xiàng)目中有時(shí)稱之為著作義(copyleft)。 有些開放源碼許可證,堅(jiān)持要求任何和其它開放源碼合組成的軟件也必須是開放源碼。然而,Eclipse使用的開放源碼許可證:公共公眾許可書-Common Public License(CPL)作為授權(quán)方式,設(shè)計(jì)上是可以容許商業(yè)利益的。CPL可以容許Eclipse和其它開放源碼軟件合組時(shí),能夠以更嚴(yán)謹(jǐn)?shù)脑S可證散布軟件,以求用于商業(yè)途徑。CPL經(jīng)過Open Software Initiative(OSI)認(rèn)證,其內(nèi)容符合開放原始碼授權(quán)的需求。1.3 Eclipse版本介紹版本介紹可以從eclipse.

5、org網(wǎng)站(/downloads)下載,可以發(fā)現(xiàn)最新與最好的版本,這兩種版本通常不一樣,基本上有四種版本-或建置(build)可供下載:發(fā)布版(Release builds) 由Eclipse開發(fā)團(tuán)隊(duì)所宣稱的主要穩(wěn)定版本。Release builds經(jīng)過完整測試,并具有一致性、定義清楚的功能。它的定位就跟上市的商業(yè)軟件一樣。穩(wěn)定版(Stable builds) 比Release build新一級的版本,經(jīng)由Eclipse開發(fā)團(tuán)隊(duì)測試,并認(rèn)定它相當(dāng)穩(wěn)定。新功能通常會(huì)在此過渡版本出現(xiàn)。它的定位就跟商業(yè)軟件的beta版一樣。整合版(Integration b

6、uilds) 此版本的各個(gè)獨(dú)立的組件已經(jīng)過Eclipse開發(fā)團(tuán)隊(duì)認(rèn)定具穩(wěn)定度,但不保證兜在一起沒問題。若兜在一起夠穩(wěn)定,它就有可能晉級成Stable build。當(dāng)日最新版(Nightly builds) 此版本顯然是從最新的原始碼產(chǎn)生出來的。可想而知,此版本當(dāng)然不保證它跑起來沒問題,搞不好還有嚴(yán)重的bug。 1.4 跨語言、跨平臺(tái)跨語言、跨平臺(tái) 多數(shù)人認(rèn)為Eclipse是Java IDE,不過,當(dāng)下載Eclipse之后,除了有Java IDE(就是JDT),還有PDE。然而Eclipse是萬用工具平臺(tái)。JDT實(shí)際上是Eclipse的添加品,也就是外掛程序。Eclipse本身實(shí)際上是指Ecli

7、pse平臺(tái)(Eclipse Platform),除了下載時(shí)能取得Java工具集以外,還提供各種工具的支持,所以平臺(tái)本身只是相當(dāng)小一組軟件。 如果想開發(fā)Java程序,用的是Eclipse隨附的JDT外掛程序。如果想開發(fā)其它語言的程序,就需要拿到其它外掛程序,諸如CDT(C Development Toolkit)就可以開發(fā)C/C+程序。 Eclipse跨計(jì)算機(jī)語言,也跨人類的語言。相同的外掛機(jī)制可用來增加對不同語言的支持,這里使用一種特殊的外掛,叫做外掛程序片斷(plug-in fragment)。IBM以捐出一個(gè)語言套件,支持中文(繁體與簡體)、法文、德文、意大利文、日文、韓文、葡萄牙文(巴西

8、)與西班牙文。2. Eclipse Platform Eclipse平臺(tái)的目的,是提供多種軟件開發(fā)工具的整合機(jī)制,這些工具會(huì)實(shí)作成Eclipse外掛程序,平臺(tái)必須用外掛程序加以擴(kuò)充才有用處。Eclipse設(shè)計(jì)美妙之處,在于所有東西都是外掛,除了底層的核心以外。這種外掛設(shè)計(jì)讓Eclipse具備強(qiáng)大擴(kuò)充性,但更重要的是,此平臺(tái)提供一個(gè)定義明確的機(jī)制,讓各種外掛程序共通合作(透過延伸點(diǎn)extension points)與貢獻(xiàn)(contributions),因此新功能可以輕易且無縫地加入平臺(tái)。 2.1架構(gòu) Eclipse平臺(tái)由數(shù)種組件組成:平臺(tái)核心(platform kernel)、工作臺(tái)(workb

9、ench)、工作區(qū)(workspace)、團(tuán)隊(duì)組件(tram component)以及說明組件(help)。 2.2菜單和工具列菜單和工具列 12345678 1.菜單(Menu Bar) 2.工具列(Tool Bar) 3.快速視圖(Fast View) 4.Package Explorer視圖 5.Editor視圖 6.快捷方式工具列(Shortcut Toolbar) 7.Outline視圖 8.Tasks視圖和Console視圖3. Java程序開發(fā) 在Eclipse中做任何事之前,都必須新增一個(gè)項(xiàng)目。Eclipse可透過外掛支持?jǐn)?shù)種項(xiàng)目(如EJB或C/C+),預(yù)設(shè)支持下列三種項(xiàng)目:

10、Java Project Java開發(fā)環(huán)境 Plug-in Project 自行開發(fā)plug-in的環(huán)境 Sample Project 提供操作文件的般環(huán)境 如圖3.1建立建立Java項(xiàng)目項(xiàng)目 新增Java項(xiàng)目的步驟: I. 選擇FileNewProject (或是在Package Explorer窗口上按鼠標(biāo)右鍵,選擇NewProject選單選項(xiàng)) (或是按工具列上New Java Project的按鈕) II. 在New Project對話框(圖4.1),選Java Project (或是展開Java的數(shù)據(jù)夾,選Java Project,如圖3.2)III. 在New Java Proje

11、ct的窗口中輸入Project的名稱,如圖3.3 IV. 在Project Layout中可以選擇編譯好的檔案是否要和原始檔放在同一個(gè)目錄下,如圖3.3V. 按下FinishIIIIVV3.2建立Java類 新增Java類別的步驟: I. 選擇FileNewClass(或是在Package Explorer窗口上按鼠標(biāo)右鍵,選擇NewClass選單選項(xiàng)) (或是按工具列上New Java Class的按鈕) II. 在New Java Class窗口中,Source Folder字段默認(rèn)值是項(xiàng)目的數(shù)據(jù)夾,不需要更改。 III. Package字段輸入程序套件的名稱 IV. Name字段輸入Cl

12、ass Name V. 在Which method would you like te creat的部份,有勾選public static void main(String args)的話,會(huì)generate main method VI. 按Finish,會(huì)依套件新增適當(dāng)?shù)哪夸浗Y(jié)構(gòu)及Java原始文件IIIIIIVVVI3.3程序代碼完成功能程序代碼完成功能 3.3.1 Code Completion 在Eclipse中打左括號時(shí)會(huì)立刻加上又括號;打雙引號(單引號)時(shí)也會(huì)立刻加上雙引號(單引號)。 3.3.2 Code Assist 在輸入程序代碼時(shí),例如要打System.out.printl

13、n時(shí),打完類別名稱后暫停一會(huì)兒,Eclipse會(huì)顯示一串建議清單,列出此類別可用的方法和屬性,并附上其Javadoc批注??梢灾苯泳韯?dòng)選出然后按Enter。 也可以只打類別開頭的字母,然后按Alt - /,一樣會(huì)顯示一串建議清單。 Alt - /這個(gè)組合鍵不僅可以可以顯示類別的清單,還可以一并顯示已建立的模板程序代碼,例如要顯示數(shù)組的信息,只要先打for,在按Alt - /這個(gè)組合鍵,就會(huì)顯示模板的請單。3.4執(zhí)行Java程序 大多數(shù)的程序不需特定的啟動(dòng)組態(tài)(Launch Configuration),首先確定要執(zhí)行的程序代碼在編輯器中有選到(頁簽變藍(lán)色),再執(zhí)行下列步驟: I. 選單選Run

14、Run asJava Application II. 若有修改過程序,Eclipse會(huì)詢問在執(zhí)行前是否要存檔 III. Tasks試圖會(huì)多出Consol頁簽并顯示程序輸出 程序若要傳參數(shù)、或是要使用其它的Java Runtim.等等,則需要設(shè)定程序啟動(dòng)的相關(guān)選項(xiàng),執(zhí)行程序前,新增一個(gè)啟動(dòng)組態(tài)或選用現(xiàn)有的啟動(dòng)組態(tài)。 選單選RunRun,開啟Run的設(shè)定窗口 Main 標(biāo)簽用以定義所要啟動(dòng)的類別。請?jiān)陧?xiàng)目字段中,輸入內(nèi)含所要啟動(dòng)之類別的項(xiàng)目名稱,并在主要類別字段中輸入主要類別的完整名稱。如果想要程序每當(dāng)在除錯(cuò)模式中啟動(dòng)時(shí),在 main 方法中停止,請勾選Stop in main勾選框。 附注:不必

15、指定一個(gè)項(xiàng)目,但這樣做可以選擇預(yù)設(shè)類別路徑、來源查閱路徑,以及 JRE。 自變量自變量(Arguments)標(biāo)簽用以定義要傳遞給應(yīng)用程序與虛擬機(jī)器(如果有的話)的自變量。也可以指定已啟動(dòng)應(yīng)用程序要使用的工作目錄。 JRE 卷標(biāo)用以定義執(zhí)行或除錯(cuò)應(yīng)用程序時(shí)所用的 JRE??梢詮囊讯x的 JRE 選取 JRE,或定義新的 JRE。 類別路徑類別路徑(Classpath)卷標(biāo)用以定義在執(zhí)行或除錯(cuò)應(yīng)用程序時(shí)所用類別文件的位置。依預(yù)設(shè),使用者和 bootstrap 類別位置是從相關(guān)聯(lián)項(xiàng)目的建置路徑衍生而來??梢栽谶@里置換這些設(shè)定。程序文件程序文件(Source)卷標(biāo)用以定義當(dāng)除錯(cuò) Java 應(yīng)用程序時(shí),

16、用來顯示程序文件之程序文件的位置。依預(yù)設(shè),這些設(shè)定是從相關(guān)聯(lián)項(xiàng)目的建置路徑衍生而來??梢栽谶@里置換這些設(shè)定。環(huán)境環(huán)境(Environment)標(biāo)簽會(huì)定義在執(zhí)行 Java 應(yīng)用程序或者對它進(jìn)行除錯(cuò)時(shí),所要使用的環(huán)境變量值。依預(yù)設(shè),這個(gè)環(huán)境是繼承自 Eclipse 執(zhí)行時(shí)期??梢灾脫Q或附加至繼承的環(huán)境。共享共享(Common)卷標(biāo)定義有關(guān)啟動(dòng)配置的一般信息??梢赃x擇將啟動(dòng)配置儲(chǔ)存在特定檔案,以及指定當(dāng)啟動(dòng)配置啟動(dòng)時(shí),哪些視景將變成作用中。 在Arguments的頁簽中輸入要傳入的值,若是多值的話,用空格鍵隔開4. 自定義開發(fā)環(huán)境 程序代碼格式程序代碼格式 在WindowPreferencesJav

17、aCode StyleCode Formatter 按Show的按鈕,出現(xiàn)Show Profile的窗口,里面的各個(gè)頁簽,可以設(shè)定Java Code Style 設(shè)定完成后,可以Export成一個(gè)檔案;以利下次設(shè)定Java Code Style時(shí),可以利用Import的方式,產(chǎn)生一致的程序風(fēng)格。 5. 建立 JAR 檔案 如果要在工作臺(tái)中建立新 JAR 檔,請執(zhí)行下列動(dòng)作: I. 在Package Explorer中,可以選擇性地預(yù)選一或多個(gè)要匯出的 Java 元素。(在步驟IV中,這些會(huì)在JAR Package Specification精靈頁面中自動(dòng)選出。) II. 從快速菜單或從菜單列的

18、File菜單,選取Export。 III. 選取JAR file,然后按一下Next。 在JAR Package Specification頁面的Select the resources to export字段中,選取要匯出的資源。 V. 選取適當(dāng)?shù)墓催x框,以指出想Export generated class files and resourcess或Export java source files and resources。附。附注:注:這兩種情況皆會(huì)匯出所選的資源。 VI. 在Select the export destination字段中,輸入或按一下Browse以選取 JAR 文件的

19、位置。 VII. 選取或清除Compress the contents of the JAR file勾選框。 VIII. 選取或清除Overwrite existing files without warning勾選框。如果清除這個(gè)勾選框,則會(huì)提示確認(rèn)是否要更換每一個(gè)將被改寫的檔案。 IX. 附注:附注:在撰寫 JAR 檔、JAR 說明與 Manifest 檔時(shí),會(huì)套用改寫選項(xiàng)。 X. 有兩項(xiàng)選擇: 按一下Finish來立即建立 JAR 檔。 按一下Next,使用JAR 套裝選項(xiàng)頁面,以設(shè)定進(jìn)階選項(xiàng),建立 JAR 說明,或變更預(yù)設(shè) manifest。IIIIVVVIII6 程序調(diào)試 6.1錯(cuò)

20、誤的程序錯(cuò)誤的程序 錯(cuò)誤的范例程序是要做階乘(n! = n * (n-1) * (n-2) *. * 1)。此范例會(huì)建立多層的堆???stack frame)。 public class ErrorTest public static void main(String args) System.out.println(factorial(6); public static int factorial(int value) if (value = 0) return value; else return value * factorial(value - 1); 此例中,是求factorial(

21、n),這個(gè)方法會(huì)遞歸的呼叫自己,直到此階乘被算盡為止。此例是要找出6的階乘,也就是720,可惜第一次執(zhí)行此例的結(jié)果是0。6.1錯(cuò)誤的程序錯(cuò)誤的程序錯(cuò)誤的范例程序是要做階乘(n! = n * (n-1) * (n-2) *. * 1)。此范例會(huì)建立多層的堆???stack frame)。public class ErrorTest public static void main(String args) System.out.println(factorial(6); public static int factorial(int value) if (value = 0) return val

22、ue; else return value * factorial(value - 1); 此例中,是求factorial(n),這個(gè)方法會(huì)遞歸的呼叫自己,直到此階乘被算盡為止。此例是要找出6的階乘,也就是720,可惜第一次執(zhí)行此例的結(jié)果是0。6.2設(shè)定斷點(diǎn)(Breakpoints) 由于沒有拋出任何的異常事件,所以問題是在程序的邏輯。要在程序執(zhí)行期間檢查程序,所以要設(shè)定斷點(diǎn)(Breakpoints)來暫停程序。在要暫停的程序代碼前面的Marker Bar點(diǎn)兩下(或是RunToggle Line Breakpoint)來設(shè)定斷點(diǎn),稍后要移除斷點(diǎn),只要再對該斷點(diǎn)按兩下即可。 要安插一個(gè)斷點(diǎn)到re

23、turn value * factorial(value - 1)的旁邊,這樣才能觀看連續(xù)運(yùn)行factorial()方法而建立的階乘值。在Marker Bar上有一個(gè)藍(lán)點(diǎn)。 開始查錯(cuò),RunDebug AsJava Application(或是按旁邊的箭頭選Debug AsJava Application),還開啟Debug視圖。 程序執(zhí)行到斷點(diǎn)會(huì)暫停,執(zhí)行暫停處的該列程序會(huì)出現(xiàn)在Debug編輯器中,標(biāo)上一個(gè)箭頭。 先了解Debug視圖。在左上角的Debug視圖中可以看見正在查錯(cuò)的程序構(gòu)成項(xiàng)目。這里的堆??蚨加袠?biāo)上三條橫棒。此例中,我們正在factorial()方法中,已經(jīng)由mail()方法所

24、調(diào)用了。Debug視圖中由左到右的按鈕分別是, Resume按鈕(在開始執(zhí)行程序)、 Suspend按鈕(暫停程序)、 Terminate按鈕(中止查錯(cuò))、 Disconnet按鈕、 Remove All Terminated Launches按鈕(除去先前debug session)。 Debug視圖右邊是層迭的視圖。分別是Variables、Breakpoints和Expressions。 Variables視圖可以檢視局部變量的值。在查程序錯(cuò)誤時(shí),可以編輯局部變量之值(稍后會(huì)做),這樣可以和程序互動(dòng)以修正問題。Eclipse會(huì)監(jiān)視這些變量值,當(dāng)這些變量值有變時(shí),會(huì)改變顏色(改成紅色)。V

25、ariables視圖底端的部分稱為詳細(xì)資料詳細(xì)資料窗格窗格(Detail Pane),會(huì)顯示更完整的信息。 Breakpoints視圖管理程序中的斷點(diǎn),對清單中的某各斷點(diǎn)按右鍵,在從選單中選擇Enable、Disable、Remove或Remove All。 Expressions視圖可以計(jì)算表示式(稍后會(huì)做),在編輯器中選取一道表示式,按右鍵,選擇Inspect選項(xiàng),就可以在Expressions視圖中予以計(jì)算。 若選Display選項(xiàng)時(shí),計(jì)算的結(jié)果會(huì)顯示在Display視圖中。 Debug視圖中的編輯器和Java視圖中的編輯器本質(zhì)上一樣的,但是Debug視圖的編輯器可以檢視變量的值,只要鼠

26、標(biāo)移到變量上即可。6.3逐步查錯(cuò)逐步查錯(cuò) 在暫停的程序中移動(dòng)最基本的作法是采逐步法(single-steping)。Eclipse提供下列的選項(xiàng): 6.3.1 Step Into 按按鈕(也可以按F5),進(jìn)入選取的敘述內(nèi)。如果該敘述是呼叫某方法,則進(jìn)入執(zhí)行該方法。 6.3.2 Step Over 按按鈕(也可以按F6),掠過選取的敘述內(nèi)。如果該敘述是呼叫某方法,則不會(huì)進(jìn)入該方法。 5.3.3 Step Return 按按鈕(也可以按F7),執(zhí)行將回復(fù),直到現(xiàn)行方法中下一個(gè) return 陳述式要執(zhí)行為止,且執(zhí)行會(huì)暫停于下個(gè)可執(zhí)行行上。 6.4繼續(xù)執(zhí)行繼續(xù)執(zhí)行 我們已經(jīng)做過程序逐步除錯(cuò),還可以繼

27、續(xù)做下去,但是每次呼叫factorial(),每一列程序代碼都得跑一遍,實(shí)在有點(diǎn)煩??梢愿某勺尦绦蛞恢迸埽钡脚龅讲頂帱c(diǎn)。要這樣做只要按Debug視圖中 Resume按鈕。 在這樣做之前,也可以設(shè)定去監(jiān)看我們想要監(jiān)視的變量。在編輯器中對該變量按右鍵,選Watch的選項(xiàng),把該變量加到Expressions視圖中。 現(xiàn)在點(diǎn)Resume按鈕,程序會(huì)繼續(xù)執(zhí)行,直到碰到下一個(gè)岔斷點(diǎn),看一下value的值為5之后,會(huì)發(fā)現(xiàn)扔然在同一個(gè)factorial()之內(nèi),只要重復(fù)不斷按Resume按鈕,可以看出value值的變化。 6.5 設(shè)定斷點(diǎn)的Hit Count 這個(gè)factorial()方法要跑6次,所以需要

28、按6次Resume按鈕;也可以設(shè)定Hit Count來節(jié)省時(shí)間。有2種方式設(shè)定:在Breakpoints視圖的岔斷點(diǎn)按右鍵 選擇Properties 開啟Breakpoints Properties窗口,勾選Hit Count,并輸入6 重新開始此debug session,程序執(zhí)行會(huì)在第6次碰上斷點(diǎn)時(shí)暫停,注意到value的值是1,而在Debug視圖中可以看見factorial()連續(xù)調(diào)用的堆棧框。6.6監(jiān)視點(diǎn)監(jiān)視點(diǎn)(Watchpoint) 之前使用的斷點(diǎn)稱為Line Breakpoint,除了Line Breakpoint以外,也支持監(jiān)視點(diǎn)(Watchpoint)、方法斷點(diǎn)(Method Breakpoint)以及異常斷點(diǎn)(Exception Breakpoint)。 設(shè)定監(jiān)視點(diǎn),表示當(dāng)程序準(zhǔn)備去存取或修改某字段時(shí),就會(huì)暫停執(zhí)行。監(jiān)視點(diǎn)不能設(shè)在區(qū)域變量身上,只能在字段身上。 設(shè)定監(jiān)視點(diǎn),在Java視景的編輯器中,選取一個(gè)字段,然后再選

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論