Eclipse快速上手指南

來源:互聯網
上載者:User
標題   Eclipse快速上手指南     選擇自 njchenyi 的 Blog
關鍵字   Eclipse快速上手指南
出處  

Eclipse快速上手指南(1)

作者:asklxf

Eclipse是一款非常優秀的開源IDE,非常適合Java開發,由於支援外掛程式技術,受到了越來越多的開發人員的歡迎。最新的Eclipse 3.0不但介面作了很大的增強,而且增加了程式碼摺疊功能等眾多優秀功能,速度也有明顯的提升。配合眾多令人眼花繚亂的外掛程式,完全可以滿足從企業級Java應用到手機終端Java遊戲的開發。本文將帶您手把手步入Eclipse的廣闊天地,詳細介紹在Eclipse下如何開發普通Java程式,Web應用,J2EE應用,手機Java程式,以及如何進行單元測試,重構,配置CVS等詳細內容。我的開發環境是JDK1.4.2+Eclipse3.0+Windows XP SP2,如果你在其他平台上遇到任何問題,歡迎來信交流。

1. 安裝JDK1.4

Eclipse是一個基於Java平台的開發環境,它本身也要運行在Java虛擬機器上,還要使用JDK的編譯器,因此我們必須首先安裝JDK。JDK1.4是目前最穩定的版本,同時也是Eclipse啟動並執行必須條件。先從SUN的官方網站http://java.sun.com下載JDK1.4 Windows版,目前最新的是1.4.2_06,然後運行j2sdk-1_4_2_06-windows-i586-p.exe安裝,你可以自行設定安裝目錄,我把它安裝到D:\software\j2sdk1.4目錄下。接下來要配置環境變數,以便Java程式能找到已安裝的JDK和其他配置資訊。右鍵點擊“我的電腦”,選擇“屬性”,在彈出的對話方塊中選擇“進階”,“環境變數”,就可以看到環境變數對話方塊:

上面是使用者變數,只對目前使用者有效,下面是系統變數,對所有使用者都有效。如果你希望所有使用者都能使用,就在系統變數下點擊“建立”,填入:

JAVA_HOME是JDK的安裝目錄,許多依賴JDK的開發環境都靠它來定位JDK,所以必須保證正確無誤。

下一步,找到系統變數Path,點擊“編輯”,在最後添上JDK的可執行檔的所在目錄,即%JAVA_HOME%\bin,我的對應目錄便是D:\software\j2sdk1.4\bin,附加到Path中即可,注意要以分號“;”隔開:

注意:如果系統安裝了多個Java虛擬機器(比如安裝了Oracle 9i就有內建的JDK1.3),必須把JDK1.4的路徑放在其他JVM的前面,否則Eclipse啟動將報錯。

最後一個系統變數是CLASSPATH,Java虛擬機器會根據CLASSPATH的設定來搜尋class檔案所在目錄,但這不是必需的,可以在運行Java程式時指定CLASSPATH,比如在Eclipse中運行寫好的Java程式時,它會自動設定CLASSPATH,但是為了在控制台能方便地運行Java程式,我建議最好還是設定一個CLASSPATH,把它的值設為“.”,注意是一個點“.”代表目前的目錄。用慣了Windows的使用者可能會以為Java虛擬機器在搜尋時會搜尋目前的目錄,其實不會,這是UNIX中的習慣,出於安全考慮。許多初學Java的朋友興匆匆地照著書上寫好了Hello,world程式,一運行卻彈出java.lang.NoClassDefFoundError,其實就是沒有設定好CLASSPATH,只要添加一個目前的目錄“.”就可以了。

2. 安裝Eclipse 3.0

配置好JDK後,下一步便是安裝Eclipse 3.0,可以從Eclipse的官方網站http://www.eclipse.org上下載,你會看到如下版本:

● Eclipse SDK
● RCP Runtime Binary
● RCP SDK
● Platform Runtime Binary
● Platform SDK
● JDT Runtime Binary

Eclipse SDK包括了Eclipse開發環境,Java開發環境,Plug-in開發環境,所有原始碼和文檔,如果你需要所有的功能,可以下載這個版本。

如果你和我一樣,只是用Eclipse開發Java應用,而不是開發Eclipse外掛程式或者研究Eclipse代碼,那麼下載一個Platform Runtime Binary再加上JDT Runtime Binary是最好的選擇。

下載eclipse-platform-3.0-win32.zip和eclipse-JDT-3.0.zip後,將它們解壓到同一個目錄,勿需安裝,直接找到目錄下的eclipse.exe運行,出現啟動畫面:

稍等片刻,Eclipse介面就出來了。如果遇到錯誤,啟動失敗,可以檢查Eclipse目錄下的log檔案,我曾經遇到過XmlParser異常,仔細檢查發現原來Path中還有一個Oracle的Java1.3版本的虛擬機器,將它從Path中去掉後Eclipse啟動正常。

3. 第一個Java程式

運行Eclipse,選擇菜單“File”,“New”,“Project”,建立一個Java Project,我把它命名為HelloWorld,然後建立一個Java Class:

我把它命名為HelloWorld,並且填上Package為example,鉤上“public static void main(String[] args)”,點擊“Finish”,Eclipse自動產生了代碼架構,我們只需在main方法中填入:

預設設定下,Eclipse會自動在背景編譯,我們只需儲存,然後選擇“Run”,“Run As”,“Java Application”,即可在Eclipse的控制台看到輸出。

要調試Java程式也非常簡單,Run菜單裡包含了標準的調試命令,可以非常方便地在IDE環境下調試應用程式。

1.4版本支援:

選擇菜單“Window”,“Preferences”,在對話方塊中找到“Java”,“Compiler”,“Compliance and Classfiles”,將編譯選項改成1.4,就可以使用JDK1.4版的assert(斷言)文法,使得測試更加方便:

Eclipse快速上手指南(2)

作者:asklxf

4. 在Eclipse中使用JUnit

測試對於保證軟體開發品質有著非常重要的作用,單元測試更是必不可少,JUnit是一個非常強大的單元測試包,可以對一個/多個類的單個/多個方法測試,還可以將不同的TestCase組合成TestSuit,使測試工作自動化。Eclipse同樣整合了JUnit,可以非常方便地編寫TestCase。

我們建立一個Java工程,添加一個example.Hello類,首先我們給Hello類添加一個abs()方法,

作用是返回絕對值:

下一步,我們準備對這個方法進行測試,確保功能正常。選中Hello.java,右鍵點擊,選擇New->JUnit Test Case:

Eclipse會詢問是否添加junit.jar包,確定後建立一個HelloTest類,用來測試Hello類。

選中setUp()和tearDown(),然後點擊“Next”:

選擇要測試的方法,我們選中abs(int)方法,完成後在HelloTest.java中輸入:

JUnit會以以下順序執行測試:(大致的代碼)

try {

HelloTest test = new HelloTest(); // 建立測試類別執行個體

test.setUp(); // 初始化測試環境

test.testAbs(); // 測試某個方法

test.tearDown(); // 清理資源

}

catch…

setUp()是建立測試環境,這裡建立一個Hello類的執行個體;tearDown()用於清理資源,如釋放開啟的檔案等等。以test開頭的方法被認為是測試方法,JUnit會依次執行testXxx()方法。在testAbs()方法中,我們對abs()的測試分別選擇正數,負數和0,如果方法傳回值與期待結果相同,則assertEquals不會產生異常。

如果有多個testXxx方法,JUnit會建立多個XxxTest執行個體,每次運行一個testXxx方法,setUp()和tearDown()會在testXxx前後被調用,因此,不要在一個testA()中依賴testB()。

直接運行Run->Run As->JUnit Test,就可以看到JUnit測試結果:

綠色表示測試通過,只要有1個測試未通過,就會顯示紅色並列出未通過測試的方法。可以試圖改變abs()的代碼,故意返回錯誤的結果(比如return n+1;),然後再運行JUnit就會報告錯誤。

如果沒有JUnit面板,選擇Window->Show View->Other,開啟JUnit的View:

JUnit通過單元測試,能在開發階段就找出許多Bug,並且,多個Test Case可以組合成Test Suite,讓整個測試自動完成,尤其適合於XP方法。每增加一個小的新功能或者對代碼進行了小的修改,就立刻運行一遍Test Suite,確保新增和修改的代碼不會破壞原有的功能,大大增強軟體的可維護性,避免代碼逐漸“腐爛”。

Eclipse快速上手指南(3)

作者:asklxf

5. 在Eclipse中使用Ant

Ant是Java平台下非常棒的批處理命令執行程式,能非常方便地自動完成編譯,測試,打包,部署等等一系列任務,大大提高開發效率。如果你現在還沒有開始使用Ant,那就要趕快開始學習使用,使自己的開發水平上一個新台階。

Eclipse中已經整合了Ant,我們可以直接在Eclipse中運行Ant。

以前面建立的Hello工程為例,建立以下目錄結構:

建立一個build.xml,放在工程根目錄下。build.xml定義了Ant要執行的批處理命令。雖然Ant也可以使用其它檔案名稱,但是遵循標準能更使開發更規範,同時易於與別人交流。

通常,src存放Java源檔案,classes存放編譯後的class檔案,lib存放編譯和運行用到的所有jar檔案,web存放JSP等web檔案,dist存放打包後的jar檔案,doc存放API文檔。

然後在根目錄下建立build.xml檔案,輸入以下內容:

<?xml version="1.0"?>

<project name="Hello world" default="doc">

<!-- properies -->

<property name="src.dir" value="src" />

<property name="report.dir" value="report" />

<property name="classes.dir" value="classes" />

<property name="lib.dir" value="lib" />

<property name="dist.dir" value="dist" />

<property name="doc.dir" value="doc"/>

<!-- 定義classpath -->

<path id="master-classpath">

<fileset file="${lib.dir}/*.jar" />

<pathelement path="${classes.dir}"/>

</path>

<!-- 初始化任務 -->

<target name="init">

</target>

<!-- 編譯 -->

<target name="compile" depends="init" description="compile the source files">

<mkdir dir="${classes.dir}"/>

<javac srcdir="${src.dir}" destdir="${classes.dir}" target="1.4">

<classpath refid="master-classpath"/>

</javac>

</target>

<!-- 測試 -->

<target name="test" depends="compile" description="run junit test">

<mkdir dir="${report.dir}"/>

<junit printsummary="on"

haltonfailure="false"

failureproperty="tests.failed"

showoutput="true">

<classpath refid="master-classpath" />

<formatter type="plain"/>

<batchtest todir="${report.dir}">

<fileset dir="${classes.dir}">

<include name="**/*Test.*"/>

</fileset>

</batchtest>

</junit>

<fail if="tests.failed">

***********************************************************

****One or more tests failed!Check the output ...****

***********************************************************

</fail>

</target>

<!-- 打包成jar -->

<target name="pack" depends="test" description="make .jar file">

<mkdir dir="${dist.dir}" />

<jar destfile="${dist.dir}/hello.jar" basedir="${classes.dir}">

<exclude name="**/*Test.*" />

<exclude name="**/Test*.*" />

</jar>

</target>

<!-- 輸出api文檔 -->

<target name="doc" depends="pack" description="create api doc">

<mkdir dir="${doc.dir}" />

<javadoc destdir="${doc.dir}"

author="true"

version="true"

use="true"

windowtitle="Test API">

<packageset dir="${src.dir}" defaultexcludes="yes">

<include name="example/**" />

</packageset>

<doctitle><![CDATA[<h1>Hello, test</h1>]]></doctitle>

<bottom><![CDATA[<i>All Rights Reserved.</i>]]></bottom>

<tag name="todo" scope="all" description="To do:" />

</javadoc>

</target>

</project>

以上xml依次定義了init(初始化),compile(編譯),test(測試),doc(產生文檔),pack(打包)任務,可以作為模板。

選中Hello工程,然後選擇“Project”,“Properties”,“Builders”,“New…”,選擇“Ant Build”:

填入Name:Ant_Builder;Buildfile:build.xml;Base Directory:${workspace_loc:/Hello}(按“Browse Workspace”選擇工程根目錄),由於用到了junit.jar包,搜尋Eclipse目錄,找到junit.jar,把它複製到Hello/lib目錄下,並添加到Ant的Classpath中:

然後在Builder面板中鉤上Ant_Build,去掉Java Builder:

再次編譯,即可在控制台看到Ant的輸出:

Buildfile: F:\eclipse-projects\Hello\build.xml

init:

compile:

[mkdir] Created dir: F:\eclipse-projects\Hello\classes

[javac] Compiling 2 source files to F:\eclipse-projects\Hello\classes

test:

[mkdir] Created dir: F:\eclipse-projects\Hello\report

[junit] Running example.HelloTest

[junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 0.02 sec

pack:

[mkdir] Created dir: F:\eclipse-projects\Hello\dist

[jar] Building jar: F:\eclipse-projects\Hello\dist\hello.jar

doc:

[mkdir] Created dir: F:\eclipse-projects\Hello\doc

[javadoc] Generating Javadoc

[javadoc] Javadoc execution

[javadoc] Loading source files for package example...

[javadoc] Constructing Javadoc information...

[javadoc] Standard Doclet version 1.4.2_04

[javadoc] Building tree for all the packages and classes...

[javadoc] Building index for all the packages and classes...

[javadoc] Building index for all classes...

[javadoc] Generating F:\eclipse-projects\Hello\doc\stylesheet.css...

[javadoc] Note: Custom tags that could override future standard tags:@todo. To avoid potential overrides, use at least one period character (.) in custom tag names.

[javadoc] Note: Custom tags that were not seen:@todo

BUILD SUCCESSFUL

Total time: 11 seconds

Ant依次執行初始化,編譯,測試,打包,產生API文檔一系列任務,極大地提高了開發效率。將來開發J2EE項目時,還可加入部署等任務。並且,即使脫離了Eclipse環境,只要正確安裝了Ant,配置好環境變數ANT_HOME=<Ant解壓目錄>,Path=…;%ANT_HOME%\bin,在命令列提示符下切換到Hello目錄,簡單地鍵入ant即可。

Eclipse平台J2ME開發之整合

作者:蠟筆小刀

(早就答應mingjava介紹一下怎樣在Eclipse平台下整合廠商sdk,無耐之幾天碰上點小難題一時解決不好,心情鬱悶。但鬱悶不是辦法啊,寫點東西也算是排遣一下吧:)

使用Eclipse開發J2ME時,最好能將常用的一些廠商的模擬器都整合進去,比較方便。本文簡要介紹一下如何將Nokia,索愛,三星的模擬器整合到Eclipse環境中。注意我使用的EclipseMe版本為0.4.3,新的版本可能會有點變化,希望我拋磚引玉,能有人補充更正。

廠商提供的開發包大概有三種形式:

一是提供一個廠商版本的WTK,比如索愛,這個WTK裡麵包含了SDK和模擬器,開發人員直接使用這個WTK進行開發(根使用SUN提供的標準WTK一樣);

二是提供和WTK配合使用的開發工具,如Nokia。你需要自己先行安裝WTK,而Nokia開發工具安裝的時候會讓你選則WTK的路徑。

三是提供一個獨立的開發環境,但不是WTK的形式,如Moto。Moto的開發工具上有一個模擬器啟動程式,有各種模擬器對應的sdk和編譯的批次檔。

這三種是我遇到過的,其他的沒用過也不知道。對於索愛,Nokia這樣依託於WTK的模擬器比較容易整合到Eclipse中,因為EclipseMe也是依託於WTK的。如果將這些廠商的模擬器整合到一個WTK裡面,就可以在Eclipse中使用了。

1. Nokia 模擬器

Nokia的模擬器都是由安裝程式安裝的,其實找一個已經安裝好的模擬器的整個檔案夾直接拷到wtk的wtklib\devices檔案夾中,就可以用了。廢話兩句,我常用的有7210,3300,S60beta0.1這些模擬器。其中7210支援中文,啟動速度快,是40開發的首選。60的模擬器都比較慢,一般只有移植的時候用一下。

2. 索愛K700與三星SGH-S100,S200,C100模擬器

索愛和三星都是以WTK形式提供的開發包,模擬器檔案夾在他們的WTK的devices中。將他們拷到你使用的WTK中吧。但是要改動一個地方,否則在Eclipse中就不能用了。以索愛K700為例,開啟模擬器檔案夾中的設定檔"SonyEricsson_K700.properties",搜尋keyboard.handler = com.sun.kvem.midp.ConfigurableKeyboardHandler,將他用#注釋調,改成keyboard.handler = com.sun.kvem.midp.DefaultKeyboardHandler,這樣就可以在Eclipse中用了。但三星的這幾個模擬器只能在WTK2.2下面用,如果不想換掉當前的WTK,你就得再安裝一個WTK2.2,EclipseMe可以同時支援多個WTK,如果你建立工程的時候選擇的是WTK2.2的配置就可以在run的模擬器選單中選擇三星的模擬器了。但這樣還是有問題,至少對我的這個版本的EclipseMe是這樣,你需要開啟project的屬性視窗,將串連庫中的內容全部刪掉(原來應該是預設的WTk2.2的Lib)而手工添加你需要的lib,如cldc1.1,midp2.0,mmapi等。

3. Moto 模擬器

我現在還沒辦法將他們整合到Eclipse中。我發現Moto的模擬器不是WTK的標準格式,它的設定檔格式和WTK的模擬器不相容。這個設定檔好像是Moto開發工具中的launch.exe讀取用的。希望有哪位瞭解的能說明一下。

說明:本文所提主要是Nokia和Midp2.0的模擬器。Midp2.0的模擬器基本上只有一個設定檔和幾張圖片,而Nokia的模擬器裡面還帶有lib等。對於有廠商api的模擬器,情況可能並不相同。這個需要具體機型具體研究,不過Eclipse可以指定外部jar,也許這就是解決之道。

作者Blog:http://blog.csdn.net/njchenyi/相關文章

Eclipse快速上手指南
J2ME中實現可伸展分類樹TreeList
利用J2MEUnit進行單元測試
執行個體分析J2ME網路編程的兩種方法
關於Fedora Core 4.0 對ntfs檔案系統的支援的解決辦法

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.