程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> Eclipse Weed

Eclipse Weed

編輯:關於JAVA

Eclipse曾經使用過的Workspace的列表

文件eclipse\configuration\.settings\org.eclipse.ui.ide.prefs的 RECENT_WORKSPACES參數記錄了該eclipse曾經使用過的工作區(它們的全路徑)。 MAX_RECENT_WORKSPACES參數設置了需要被記錄的工作區的最多個數(默認值為5) 。這些路徑的列表會顯示在主菜單File-->Switch Workspace...-- >Workspace Lanucher中的Workspace下拉列表框內。

在啟動時使用指定的工作區

eclipse.exe -data Workspace_Full_Path

注意:使用這種方法使用的工作區不會記錄到 org.eclipse.ui.ide.prefs ( 見上一主題)中。

這可能是因為在啟動時已經明確了工作區,也就不需要在 Workspace Lanucher 選擇了,故Eclipse不將該信息記錄到配置文件中。

Format多個文件

這一點其實很簡單,右鍵點擊需要被格式化的文件(或它所在的目錄)-- >Source-->Format,即可。

注意:

[1]由於該操作沒有“後悔藥”(即不能做undo),所以在做之前要謹慎。

[2]如果是右鍵點擊某個目錄,那麼該操作只能影響該目錄當前路徑下的文件 ,它子目錄中的文件不會被格式化。

配置外部工具(External Tools)

根據Eclipse的幫助可以知道配置外部工具的一般方法(請見Eclipse3.2幫助 )。但對於配置某個特定的外部工具還需要區別對待。JDK/bin中自帶的 javap.exe可以分解class文件,幫助我們理解程序的執行過程,是一個十分有用 的工具。下面就以把javap.exe工具配置為外部工具作為例子進行講述。

假設有目錄結構:

Test

|--src

|  |--test

|    |--Test.java

|

|--bin

|--test

|--Test.class Test是Eclipse的Java工程;src是源代碼目錄,其中有源代碼 test/Test.java文件;bin是輸出目錄,其中有test/Test.java被編譯後生成的 test/Test.calss文件。

如果我們僅僅在cmd窗口(而非Eclsipe環境中)使用javap.exe,可以在任何 目錄下執行如下形式的命令行(前提是已經設置了JAVA_HOME環境變量):

javap -classpath Workspace_Path\Test\bin -c test.Test

配置外部工具的步驟:

[1]通過主菜單Run-->External Tools-->External Tools...進入外部 工具配置向導。

[2]選擇Program項,並按左上角的新建(New Launch Configuration)按鈕顯示 配置對話框。

[3]在Name文本框中輸入這個External Tool的名稱,本處寫javap。

[4]在Location中填入javap.exe的路徑。因為java.exe是工作區之外的程序, 所以可以通過Browse File System...按鈕進行選擇。

[5]Working Directory文本框保持為空。

[6]Arguments中要填入執行javap命令時所需要的參數,這個參數就是前述命 令行中的-classpath Workspace_Path\Test\bin -c test.Test。但我們要使該工具 有通用的使用,就不可能將這個參數“寫死”了。所以需要使用一些變量 (Variable)來代替具體的路徑。點擊按鈕Variables...可以看到所有的變量,我 們需要使用workspace_loc,project_name和java_type_name。最終的完全參數如 下所示:

-classpath ${workspace_loc}/${project_name}/bin -c ${java_type_name}

[7]點擊Apply之後,就可以在工具欄的外部工具按鈕(帶一把紅色小鎖的Run圖 標)中發現一個名為javap的外部工具被添加進去了。

[8]選擇某一個Java文件,然後點擊工具欄上的外部工具按鈕,即可對這個 Java文件對應的class文件進行分解了。分解信息會顯示在控制台中。

注意:細心的朋友肯定可以發現,上述方法有十分嚴重的局限性:class文件 必須在bin目錄下。其實對於設置外部工具的確切方法我沒有完全弄清楚,主要是 不懂各個Variable的確切含義,以及它們的組合規律。

又:

前面已經提到,前述的將javap.exe配置為外部工具的方法並不很好。關鍵在 於Arguments設置的不好,以至於這種方法缺乏足夠的彈性。現在我們做一些改進 :

將 -classpath ${workspace_loc}/${project_name}/bin -c ${java_type_name} 修改為-classpath ${folder_prompt} -c ${java_type_name}。

在這種情況下使用外部工具javap,我們需要先選中一個Java文件(不能是它的 class文件),然後再運行外部工具javap。運行javap時,會出現一個路徑選擇對 話框,請選擇到class文件(包括它的包路徑)所在的根目錄。則在此處,這個路徑就是 Workspace_Path\Test\bin (而不是 Workspace_Path\Test\bin\Test ) 。

注意:這種方法的自由度已經大大提高,但似乎仍然不太理想。因為我們不僅 要選擇一個Java文件,還需要選擇一個相當於classpath的路徑。所以該問題仍然 需要繼續關注...

使用Templat

主菜單Preferences...-->Java-->Editor-->Templates,在 Templates中可以看到一些已創建的模板,均都包含4部分:

Name:模板的名稱

Context:模板使用的環境

Description:對該模板功能的簡單描述

Auto Insert:(目前還不懂^_^)

在Preview文本域中可以看到該模板的通用內容。下面以foreach模板為例進行 講述。

Name:foreach,即Enhanced for-Loop,是JDK5.0的新特性之一。

Context:java,即在進行Java編碼時使用

Description:iterate over an array or Iterable,即遍歷一個數組或一個 實現了Iterable接口的對象。

Auto Insert:(無內容)

Preview的內容如下:

for (${iterable_type} ${iterable_element} : ${iterable}) {
   ${cursor}
}

Preview中的內容,其實也就是該模板功能的實現方式。它指示了當使用這個 模板時,應該如何生成代碼。 我目前還不知道${}通用元素的使用方法,主要是 不知道所有的可被使用的${}通用元素及其意義。不過根據這些通用元素的名字, 我們仍然能夠猜測到它的意義: ${iterable_type} ,迭代器中包含的元素的類 型; ${iterable_element},聲明的一個迭代器中元素的引用變量; ${iterable},迭代器對象本身的引用變量; ${cursor},光標的位置。

使用foreach模板:編輯Java源文件,先寫入foreach,然後再接著使用組合快 捷鍵Alt+/(使用Content Assist,即內容提示或所謂的智能感知),此時就會出現 foreach模板的提示,單擊該提示即可。

創建模板,關鍵也是要弄清楚通用元素的使用方法。但對於不太復雜的模板, 也可以不使用/少使用通用元素。不使用通用元素,會使模板的通用性差些。

設置多個Source與Output目錄

通過工程Properties-->Java Build Path-->Source,可以看到該工程 的默認Output目錄和所有Source目錄。

可以通過“Add Folder...”或“Link Folder...”為工程增加Source目錄。

打開已存在的Source目錄的樹,可以發現Output folder,一般它的值為 Default output folder。選中並編輯它,就可以為這個Source目錄選擇Output目 錄了。

最直接的方法:編輯工程根目錄下的.classpath文件,在該文件中加入如下形 式的語句:

<classpathentry kind="src" path="源文件目錄" output="Output目 錄"/>

即,增加一個Source目錄,並為它設置一個Output目錄。

工程的默認Output目錄的配置語句的形式如下:

<classpathentry kind="output" path=" Output目錄 "/>

即,它不需要對應特定的源文件目錄,工程的所有源文件目錄都與它關聯。

指定Eclipse啟動畫面(Splash)

eclipse.exe -vmargs -Dosgi.splashLocation=Your_Splash_Path

Your_Splash_Path 就是所指定的啟動畫面的路徑,必須是一張bmp格式的圖片 。

為什麼Eclipse能夠編譯出不同版本的class文件?

右鍵點擊Project-->Java Compiler-->JDK Compilance-- >Compilance Level,在這個下拉列表框中可以選擇不同的編譯級別,目前包 括1.3,1.4,5.0和6.0。

Eclipse並不使用當前系統中安裝的JDK(JRE)中的編譯器(javac)編譯工程源代 碼,而是使用JDT中的編譯工具來進行。這也就能夠解釋,為什麼在系統中只安裝 了JDK1.4.2,但Eclipse仍然能夠編譯出5.0或6.0的class文件。

雖然Eclipse可以為每個工程選擇不同的編譯級別,且該編譯行為與JDK中的 javac無關,但在Eclipse中運行class所需要的JRE卻必須是系統中已經安裝了的 。可以在主菜單Window-->Preferences-->Java-->Installed JREs中添 加或選擇不同的JRE。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved