posts - 97,  comments - 93,  trackbacks - 0
          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:softwarej2sdk1.4目錄下。

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


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

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

          下一步,找到系統變量Path,點擊“編輯”,在最后添上JDK的可執行文件的所在目錄,即%JAVA_HOME%in,我的對應目錄便是D:softwarej2sdk1.4in,附加到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(斷言)語法,使得測試更加方便:


          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,確保新增和修改的代碼不會破壞原有的功能,大大增強軟件的可維護性,避免代碼逐漸“腐爛”。


          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-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 依次執行初始化,編譯,測試,打包,生成API文檔一系列任務,極大地提高了開發效率。將來開發J2EE項目時,還可加入部署等任務。并且,即使脫離了 Eclipse環境,只要正確安裝了Ant,配置好環境變量ANT_HOME=<Ant解壓目錄>,Path=…;%ANT_HOME% in,在命令行提示符下切換到Hello目錄,簡單地鍵入ant即可。
          posted on 2006-05-22 18:12 wqwqwqwqwq 閱讀(2971) 評論(3)  編輯  收藏

          FeedBack:
          # re: Eclipse使用指南
          2006-05-23 23:05 | h
          ihju  回復  更多評論
            
          # re: Eclipse使用指南
          2008-10-13 18:34 | shw2ly@163.com
          為什么每次開Eclipse都要重新安裝呢  回復  更多評論
            
          # re: Eclipse使用指南
          2008-10-13 18:47 | nicky
          @shw2ly@163.com
          你說的情況不應該發生,請重新安裝相應版本JDk->相應版本Eclipse.

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

          在開啟eclipse后,設置你的默認工程文件位置。  回復  更多評論
            

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          <2025年7月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789




          常用鏈接

          留言簿(10)

          隨筆分類(95)

          隨筆檔案(97)

          文章檔案(10)

          相冊

          J2ME技術網站

          java技術相關

          mess

          搜索

          •  

          最新評論

          閱讀排行榜

          校園夢網網絡電話,中國最優秀的網絡電話
          主站蜘蛛池模板: 汽车| 河西区| 嘉峪关市| 古丈县| 泗水县| 成安县| 普兰县| 天镇县| 荆州市| 华池县| 孟连| 甘谷县| 喀喇沁旗| 如东县| 宁武县| 嘉鱼县| 定南县| 无棣县| 徐州市| 繁峙县| 吴旗县| 邵东县| 勃利县| 花莲市| 天柱县| 博爱县| 军事| 广昌县| 武威市| 凤阳县| 宁陕县| 陆河县| 读书| 逊克县| 德庆县| 黔江区| 达尔| 玉环县| 松阳县| 宝应县| 宜丰县|