<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 97,  comments - 93,  trackbacks - 0
    Eclipse是一款非常優(yōu)秀的開(kāi)源IDE,非常適合Java開(kāi)發(fā),由于支持插件技術(shù),受到了越來(lái)越多的開(kāi)發(fā)者的歡迎。最新的Eclipse 3.0不但界面作了很大的增強(qiáng),而且增加了代碼折疊等眾多優(yōu)秀功能,速度也有明顯的提升。配合眾多令人眼花繚亂的插件,完全可以滿足從企業(yè)級(jí)Java應(yīng)用 到手機(jī)終端Java游戲的開(kāi)發(fā)。本文將帶您手把手步入Eclipse的廣闊天地,詳細(xì)介紹在Eclipse下如何開(kāi)發(fā)普通Java程序,Web應(yīng)用, J2EE應(yīng)用,手機(jī)Java程序,以及如何進(jìn)行單元測(cè)試,重構(gòu),配置CVS等詳細(xì)內(nèi)容。

    我的開(kāi)發(fā)環(huán)境是JDK1.4.2+Eclipse3.0+Windows XP SP2,如果你在其他平臺(tái)上遇到任何問(wèn)題,歡迎來(lái)信交流。

    1. 安裝JDK1.4

    Eclipse 是一個(gè)基于Java平臺(tái)的開(kāi)發(fā)環(huán)境,它本身也要運(yùn)行在Java虛擬機(jī)上,還要使用JDK的編譯器,因此我們必須首先安裝JDK。JDK1.4是目前最穩(wěn)定 的版本,同時(shí)也是Eclipse運(yùn)行的必須條件。先從SUN的官方站點(diǎn)http://java.sun.com下載JDK1.4 Windows版,目前最新的是1.4.2_06,然后運(yùn)行j2sdk-1_4_2_06-windows-i586-p.exe安裝,你可以自行設(shè)定安 裝目錄,我把它安裝到D:softwarej2sdk1.4目錄下。

    接下來(lái)要配置環(huán)境變量,以便Java程序能找到已安裝的JDK和其他配置信息。右鍵點(diǎn)擊“我的電腦”,選擇“屬性”,在彈出的對(duì)話框中選擇“高級(jí)”,“環(huán)境變量”,就可以看到環(huán)境變量對(duì)話框:


    上面是用戶(hù)變量,只對(duì)當(dāng)前用戶(hù)有效,下面是系統(tǒng)變量,對(duì)所有用戶(hù)都有效。如果你希望所有用戶(hù)都能使用,就在系統(tǒng)變量下點(diǎn)擊“新建”,填入:

    JAVA_HOME是JDK的安裝目錄,許多依賴(lài)JDK的開(kāi)發(fā)環(huán)境都靠它來(lái)定位JDK,所以必須保證正確無(wú)誤。

    下一步,找到系統(tǒng)變量Path,點(diǎn)擊“編輯”,在最后添上JDK的可執(zhí)行文件的所在目錄,即%JAVA_HOME%in,我的對(duì)應(yīng)目錄便是D:softwarej2sdk1.4in,附加到Path中即可,注意要以分號(hào)“;”隔開(kāi):


    注意:如果系統(tǒng)安裝了多個(gè)Java虛擬機(jī)(比如安裝了Oracle 9i就有自帶的JDK1.3),必須把JDK1.4的路徑放在其他JVM的前面,否則Eclipse啟動(dòng)將報(bào)錯(cuò)。

    最 后一個(gè)系統(tǒng)變量是CLASSPATH,Java虛擬機(jī)會(huì)根據(jù)CLASSPATH的設(shè)定來(lái)搜索class文件所在目錄,但這不是必需的,可以在運(yùn)行Java 程序時(shí)指定CLASSPATH,比如在Eclipse中運(yùn)行寫(xiě)好的Java程序時(shí),它會(huì)自動(dòng)設(shè)定CLASSPATH,但是為了在控制臺(tái)能方便地運(yùn)行 Java程序,我建議最好還是設(shè)置一個(gè)CLASSPATH,把它的值設(shè)為“.”,注意是一個(gè)點(diǎn)“.”代表當(dāng)前目錄。用慣了Windows的用戶(hù)可能會(huì)以為 Java虛擬機(jī)在搜索時(shí)會(huì)搜索當(dāng)前目錄,其實(shí)不會(huì),這是UNIX中的習(xí)慣,出于安全考慮。許多初學(xué)Java的朋友興匆匆地照著書(shū)上寫(xiě)好了Hello, world程序,一運(yùn)行卻彈出java.lang.NoClassDefFoundError,其實(shí)就是沒(méi)有設(shè)置好CLASSPATH,只要添加一個(gè)當(dāng)前 目錄“.”就可以了。

    2. 安裝Eclipse 3.0

    配置好JDK后,下一步便是安裝Eclipse 3.0,可以從Eclipse的官方站點(diǎn)http://www.eclipse.org上下載,你會(huì)看到如下版本:

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

    Eclipse SDK包括了Eclipse開(kāi)發(fā)環(huán)境,Java開(kāi)發(fā)環(huán)境,Plug-in開(kāi)發(fā)環(huán)境,所有源代碼和文檔,如果你需要所有的功能,可以下載這個(gè)版本。

    如果你和我一樣,只是用Eclipse開(kāi)發(fā)Java應(yīng)用,而不是開(kāi)發(fā)Eclipse插件或者研究Eclipse代碼,那么下載一個(gè)Platform Runtime Binary再加上JDT Runtime Binary是最好的選擇。

    下載eclipse-platform-3.0-win32.zip和eclipse-JDT-3.0.zip后,將它們解壓到同一個(gè)目錄,勿需安裝,直接找到目錄下的eclipse.exe運(yùn)行,出現(xiàn)啟動(dòng)畫(huà)面:


    稍等片刻,Eclipse界面就出來(lái)了。

    如果遇到錯(cuò)誤,啟動(dòng)失敗,可以檢查Eclipse目錄下的log文件,我曾經(jīng)遇到過(guò)XmlParser異常,仔細(xì)檢查發(fā)現(xiàn)原來(lái)Path中還有一個(gè)Oracle的Java1.3版本的虛擬機(jī),將它從Path中去掉后Eclipse啟動(dòng)正常。

    3. 第一個(gè)Java程序

    運(yùn)行Eclipse,選擇菜單“File”,“New”,“Project”,新建一個(gè)Java Project,我把它命名為HelloWorld,然后新建一個(gè)Java Class:


    我把它命名為HelloWorld,并且填上Package為example,鉤上“public static void main(String[] args)”,點(diǎn)擊“Finish”,Eclipse自動(dòng)生成了代碼框架,我們只需在main方法中填入:

    默認(rèn)設(shè)置下,Eclipse會(huì)自動(dòng)在后臺(tái)編譯,我們只需保存,然后選擇“Run”,“Run As”,“Java Application”,即可在Eclipse的控制臺(tái)看到輸出。

    要調(diào)試Java程序也非常簡(jiǎn)單,Run菜單里包含了標(biāo)準(zhǔn)的調(diào)試命令,可以非常方便地在IDE環(huán)境下調(diào)試應(yīng)用程序。

    1.4版本支持:

    選擇菜單“Window”,“Preferences”,在對(duì)話框中找到“Java”,“Compiler”,“Compliance and Classfiles”,將編譯選項(xiàng)改成1.4,就可以使用JDK1.4版的assert(斷言)語(yǔ)法,使得測(cè)試更加方便:


    4. 在Eclipse中使用JUnit

    測(cè) 試對(duì)于保證軟件開(kāi)發(fā)質(zhì)量有著非常重要的作用,單元測(cè)試更是必不可少,JUnit是一個(gè)非常強(qiáng)大的單元測(cè)試包,可以對(duì)一個(gè)/多個(gè)類(lèi)的單個(gè)/多個(gè)方法測(cè)試,還 可以將不同的TestCase組合成TestSuit,使測(cè)試任務(wù)自動(dòng)化。Eclipse同樣集成了JUnit,可以非常方便地編寫(xiě)TestCase。

    我們創(chuàng)建一個(gè)Java工程,添加一個(gè)example.Hello類(lèi),首先我們給Hello類(lèi)添加一個(gè)abs()方法,作用是返回絕對(duì)值:


    下一步,我們準(zhǔn)備對(duì)這個(gè)方法進(jìn)行測(cè)試,確保功能正常。選中Hello.java,右鍵點(diǎn)擊,選擇New->JUnit Test Case:

    Eclipse會(huì)詢(xún)問(wèn)是否添加junit.jar包,確定后新建一個(gè)HelloTest類(lèi),用來(lái)測(cè)試Hello類(lèi)。

    選中setUp()和tearDown(),然后點(diǎn)擊“Next”:

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

    JUnit會(huì)以以下順序執(zhí)行測(cè)試:(大致的代碼)

    try {
    HelloTest test = new HelloTest(); // 建立測(cè)試類(lèi)實(shí)例
    test.setUp(); // 初始化測(cè)試環(huán)境
    test.testAbs(); // 測(cè)試某個(gè)方法
    test.tearDown(); // 清理資源
    }
    catch…

    setUp ()是建立測(cè)試環(huán)境,這里創(chuàng)建一個(gè)Hello類(lèi)的實(shí)例;tearDown()用于清理資源,如釋放打開(kāi)的文件等等。以test開(kāi)頭的方法被認(rèn)為是測(cè)試方 法,JUnit會(huì)依次執(zhí)行testXxx()方法。在testAbs()方法中,我們對(duì)abs()的測(cè)試分別選擇正數(shù),負(fù)數(shù)和0,如果方法返回值與期待結(jié) 果相同,則assertEquals不會(huì)產(chǎn)生異常。

    如果有多個(gè)testXxx方法,JUnit會(huì)創(chuàng)建多個(gè)XxxTest實(shí)例,每次運(yùn)行一個(gè)testXxx方法,setUp()和tearDown()會(huì)在testXxx前后被調(diào)用,因此,不要在一個(gè)testA()中依賴(lài)testB()。

    直接運(yùn)行Run->Run As->JUnit Test,就可以看到JUnit測(cè)試結(jié)果:


    綠色表示測(cè)試通過(guò),只要有1個(gè)測(cè)試未通過(guò),就會(huì)顯示紅色并列出未通過(guò)測(cè)試的方法。可以試圖改變abs()的代碼,故意返回錯(cuò)誤的結(jié)果(比如return n+1;),然后再運(yùn)行JUnit就會(huì)報(bào)告錯(cuò)誤。

    如果沒(méi)有JUnit面板,選擇Window->Show View->Other,打開(kāi)JUnit的View:


    JUnit 通過(guò)單元測(cè)試,能在開(kāi)發(fā)階段就找出許多Bug,并且,多個(gè)Test Case可以組合成Test Suite,讓整個(gè)測(cè)試自動(dòng)完成,尤其適合于XP方法。每增加一個(gè)小的新功能或者對(duì)代碼進(jìn)行了小的修改,就立刻運(yùn)行一遍T(mén)est Suite,確保新增和修改的代碼不會(huì)破壞原有的功能,大大增強(qiáng)軟件的可維護(hù)性,避免代碼逐漸“腐爛”。


    5. 在Eclipse中使用Ant

    Ant是Java平臺(tái)下非常棒的批處理命令執(zhí)行程序,能非常方便地自動(dòng)完成編譯,測(cè)試,打包,部署等等一系列任務(wù),大大提高開(kāi)發(fā)效率。如果你現(xiàn)在還沒(méi)有開(kāi)始使用Ant,那就要趕快開(kāi)始學(xué)習(xí)使用,使自己的開(kāi)發(fā)水平上一個(gè)新臺(tái)階。

    Eclipse中已經(jīng)集成了Ant,我們可以直接在Eclipse中運(yùn)行Ant。

    以前面建立的Hello工程為例,創(chuàng)建以下目錄結(jié)構(gòu):

    新建一個(gè)build.xml,放在工程根目錄下。build.xml定義了Ant要執(zhí)行的批處理命令。雖然Ant也可以使用其它文件名,但是遵循標(biāo)準(zhǔn)能更使開(kāi)發(fā)更規(guī)范,同時(shí)易于與別人交流。

    通常,src存放Java源文件,classes存放編譯后的class文件,lib存放編譯和運(yùn)行用到的所有jar文件,web存放JSP等web文件,dist存放打包后的jar文件,doc存放API文檔。

    然后在根目錄下創(chuàng)建build.xml文件,輸入以下內(nèi)容:

    <?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>

    <!-- 初始化任務(wù) -->
    <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>

    <!-- 測(cè)試 -->
    <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>

    以上x(chóng)ml依次定義了init(初始化),compile(編譯),test(測(cè)試),doc(生成文檔),pack(打包)任務(wù),可以作為模板。

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

    填 入Name:Ant_Builder;Buildfile:build.xml;Base Directory:${workspace_loc:/Hello}(按“Browse Workspace”選擇工程根目錄),由于用到了junit.jar包,搜索Eclipse目錄,找到j(luò)unit.jar,把它復(fù)制到 Hello/lib目錄下,并添加到Ant的Classpath中:


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

    再次編譯,即可在控制臺(tái)看到Ant的輸出:

    Buildfile: F:eclipse-projectsHellouild.xml

    init:

    compile:
    [mkdir] Created dir: F:eclipse-projectsHelloclasses
    [javac] Compiling 2 source files to F:eclipse-projectsHelloclasses

    test:
    [mkdir] Created dir: F:eclipse-projectsHello eport
    [junit] Running example.HelloTest
    [junit] Tests run: 1, Failures: 0, Errors: 0, Time elapsed: 0.02 sec

    pack:
    [mkdir] Created dir: F:eclipse-projectsHellodist
    [jar] Building jar: F:eclipse-projectsHellodisthello.jar

    doc:
    [mkdir] Created dir: F:eclipse-projectsHellodoc
    [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-projectsHellodocstylesheet.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 依次執(zhí)行初始化,編譯,測(cè)試,打包,生成API文檔一系列任務(wù),極大地提高了開(kāi)發(fā)效率。將來(lái)開(kāi)發(fā)J2EE項(xiàng)目時(shí),還可加入部署等任務(wù)。并且,即使脫離了 Eclipse環(huán)境,只要正確安裝了Ant,配置好環(huán)境變量ANT_HOME=<Ant解壓目錄>,Path=…;%ANT_HOME% in,在命令行提示符下切換到Hello目錄,簡(jiǎn)單地鍵入ant即可。
    posted on 2006-05-22 18:12 wqwqwqwqwq 閱讀(2966) 評(píng)論(3)  編輯  收藏

    FeedBack:
    # re: Eclipse使用指南
    2006-05-23 23:05 | h
    # re: Eclipse使用指南
    2008-10-13 18:34 | shw2ly@163.com
    為什么每次開(kāi)Eclipse都要重新安裝呢  回復(fù)  更多評(píng)論
      
    # re: Eclipse使用指南
    2008-10-13 18:47 | nicky
    @shw2ly@163.com
    你說(shuō)的情況不應(yīng)該發(fā)生,請(qǐng)重新安裝相應(yīng)版本JDk->相應(yīng)版本Eclipse.

    最新的eclipse我不是很清楚,3.3以前似乎也不需要安裝,在jdk環(huán)境下可以直接運(yùn)行。

    在開(kāi)啟eclipse后,設(shè)置你的默認(rèn)工程文件位置。  回復(fù)  更多評(píng)論
      

    只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567




    常用鏈接

    留言簿(10)

    隨筆分類(lèi)(95)

    隨筆檔案(97)

    文章檔案(10)

    相冊(cè)

    J2ME技術(shù)網(wǎng)站

    java技術(shù)相關(guān)

    mess

    搜索

    •  

    最新評(píng)論

    閱讀排行榜

    校園夢(mèng)網(wǎng)網(wǎng)絡(luò)電話,中國(guó)最優(yōu)秀的網(wǎng)絡(luò)電話
    主站蜘蛛池模板: 99人中文字幕亚洲区| 免费av一区二区三区| 亚洲精品美女在线观看| 亚洲综合国产精品第一页| 国产精品视频永久免费播放| 97人妻精品全国免费视频| 无忧传媒视频免费观看入口| 亚洲人成电影网站色| 亚洲日本在线播放| 亚洲高清在线播放| 国产亚洲精品高清在线| 波多野结衣中文一区二区免费| 毛片视频免费观看| 国产免费毛不卡片| 精品女同一区二区三区免费站| 免费黄色电影在线观看| 99久久婷婷免费国产综合精品| 一级毛片大全免费播放下载| 男女猛烈xx00免费视频试看| 亚洲高清毛片一区二区| 久久亚洲精品高潮综合色a片| 亚洲人成片在线观看| 91亚洲性爱在线视频| 亚洲欧洲日产国码在线观看| 亚洲美女视频网址| 久久久久久亚洲AV无码专区| 91亚洲精品第一综合不卡播放| 亚洲精品高清视频| 亚洲综合无码一区二区| 久久久亚洲欧洲日产国码是AV| 亚洲天天做日日做天天欢毛片| 亚洲AV无码成人网站久久精品大| 亚洲AV无码第一区二区三区| 久久国产亚洲高清观看| 久久精品亚洲精品国产色婷 | 九九全国免费视频| 亚洲黄片手机免费观看| 久久国产免费直播| a毛片在线还看免费网站| 性无码免费一区二区三区在线| 7x7x7x免费在线观看|