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

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

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

    John Jiang

    a cup of Java, cheers!
    https://github.com/johnshajiang/blog

       :: 首頁(yè) ::  :: 聯(lián)系 :: 聚合  :: 管理 ::
      131 隨筆 :: 1 文章 :: 530 評(píng)論 :: 0 Trackbacks
    Eclipse Weed
    在使用Eclipse的過(guò)程中一些小知識(shí)的收集,文中的所有描述均在Eclipse3.2環(huán)境下。(2006.11.13 最后更新 )

    Eclipse曾經(jīng)使用過(guò)的Workspace的列表
    文件eclipse\configuration\.settings\org.eclipse.ui.ide.prefsRECENT_WORKSPACES參數(shù)記錄了該eclipse曾經(jīng)使用過(guò)的工作區(qū)(它們的全路徑)。MAX_RECENT_WORKSPACES參數(shù)設(shè)置了需要被記錄的工作區(qū)的最多個(gè)數(shù)(默認(rèn)值為5)。這些路徑的列表會(huì)顯示在主菜單File-->Switch Workspace...-->Workspace Lanucher中的Workspace下拉列表框內(nèi)。

    在啟動(dòng)時(shí)使用指定的工作區(qū)
    eclipse.exe -data Workspace_Full_Path
    注意:使用這種方法使用的工作區(qū)不會(huì)記錄到
    org.eclipse.ui.ide.prefs (見(jiàn)上一主題)中。
    這可能是因?yàn)樵趩?dòng)時(shí)已經(jīng)明確了工作區(qū),也就不需要在
    Workspace Lanucher 選擇了,故Eclipse不將該信息記錄到配置文件中。

    Format多個(gè)文件
    這一點(diǎn)其實(shí)很簡(jiǎn)單,右鍵點(diǎn)擊需要被格式化的文件(或它所在的目錄)-->Source-->Format,即可。
    注意:
    [1]由于該操作沒(méi)有“后悔藥”(即不能做undo),所以在做之前要謹(jǐn)慎。
    [2]如果是右鍵點(diǎn)擊某個(gè)目錄,那么該操作只能影響該目錄當(dāng)前路徑下的文件,它子目錄中的文件不會(huì)被格式化。

    配置外部工具(External Tools)
    根據(jù)Eclipse的幫助可以知道配置外部工具的一般方法(請(qǐng)見(jiàn)Eclipse3.2幫助)。但對(duì)于配置某個(gè)特定的外部工具還需要區(qū)別對(duì)待。JDK/bin中自帶的javap.exe可以分解class文件,幫助我們理解程序的執(zhí)行過(guò)程,是一個(gè)十分有用的工具。下面就以把javap.exe工具配置為外部工具作為例子進(jìn)行講述。
    假設(shè)有目錄結(jié)構(gòu):
    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環(huán)境中)使用javap.exe,可以在任何目錄下執(zhí)行如下形式的命令行(前提是已經(jīng)設(shè)置了JAVA_HOME環(huán)境變量):
    javap -classpath Workspace_Path\Test\bin -c test.Test
    配置外部工具的步驟:
    [1]通過(guò)主菜單Run-->External Tools-->External Tools...進(jìn)入外部工具配置向?qū)А?br /> [2]選擇Program項(xiàng),并按左上角的新建(New Launch Configuration)按鈕顯示配置對(duì)話框。
    [3]在Name文本框中輸入這個(gè)External Tool的名稱,本處寫(xiě)javap
    [4]在Location中填入javap.exe的路徑。
    因?yàn)?font color="#0000ff">java.exe是工作區(qū)之外的程序,所以
    可以通過(guò)Browse File System...按鈕進(jìn)行選擇。
    [5]Working Directory文本框保持為空。
    [6]Arguments中要填入執(zhí)行javap命令時(shí)所需要的參數(shù),這個(gè)參數(shù)就是前述命令行中的
    -classpath Workspace_Path\Test\bin -c test.Test。但我們要使該工具有通用的使用,就不可能將這個(gè)參數(shù)“寫(xiě)死”了。所以需要使用一些變量(Variable)來(lái)代替具體的路徑。點(diǎn)擊按鈕Variables...可以看到所有的變量,我們需要使用workspace_loc,project_name和java_type_name。最終的完全參數(shù)如下所示:
    -classpath ${workspace_loc}/${project_name}/bin -c ${java_type_name}
    [7]點(diǎn)擊Apply之后,就可以在工具欄的外部工具按鈕(帶一把紅色小鎖的Run圖標(biāo))中發(fā)現(xiàn)一個(gè)名為javap的外部工具被添加進(jìn)去了。
    [8]選擇某一個(gè)Java文件,然后點(diǎn)擊工具欄上的外部工具按鈕,即可對(duì)這個(gè)Java文件對(duì)應(yīng)的class文件進(jìn)行分解了。分解信息會(huì)顯示在控制臺(tái)中。
    注意:細(xì)心的朋友肯定可以發(fā)現(xiàn),上述方法有十分嚴(yán)重的局限性:class文件必須在bin目錄下。其實(shí)對(duì)于設(shè)置外部工具的確切方法我沒(méi)有完全弄清楚,主要是不懂各個(gè)Variable的確切含義,以及它們的組合規(guī)律。
    又:
    前面已經(jīng)提到,前述的將javap.exe配置為外部工具的方法并不很好。關(guān)鍵在于Arguments設(shè)置的不好,以至于這種方法缺乏足夠的彈性。現(xiàn)在我們做一些改進(jìn):
    -classpath ${workspace_loc}/${project_name}/bin -c ${java_type_name} 修改為-classpath ${folder_prompt} -c ${java_type_name}
    在這種情況下使用外部工具javap,我們需要先選中一個(gè)Java文件(不能是它的class文件),然后再運(yùn)行外部工具javap。運(yùn)行javap時(shí),會(huì)出現(xiàn)一個(gè)路徑選擇對(duì)話框,請(qǐng)選擇到class文件(包括它的包路徑)所在的根目錄。則在此處,這個(gè)路徑就是
    Workspace_Path\Test\bin (而不是 Workspace_Path\Test\bin\Test )
    注意:這種方法的自由度已經(jīng)大大提高,但似乎仍然不太理想。因?yàn)槲覀儾粌H要選擇一個(gè)Java文件,還需要選擇一個(gè)相當(dāng)于classpath的路徑。所以該問(wèn)題仍然需要繼續(xù)關(guān)注...


    使用Templat

    主菜單Preferences...-->Java-->Editor-->Templates,在Templates中可以看到一些已創(chuàng)建的模板,均都包含4部分:
    Name:模板的名稱
    Context:模板使用的環(huán)境
    Description:對(duì)該模板功能的簡(jiǎn)單描述
    Auto Insert:(目前還不懂^_^)
    Preview文本域中可以看到該模板的通用內(nèi)容。下面以foreach模板為例進(jìn)行講述。
    Name:foreach,即Enhanced for-Loop,是JDK5.0的新特性之一。
    Context:java,即在進(jìn)行Java編碼時(shí)使用
    Description:iterate over an array or Iterable,即遍歷一個(gè)數(shù)組或一個(gè)實(shí)現(xiàn)了Iterable接口的對(duì)象。
    Auto Insert:(無(wú)內(nèi)容)
    Preview的內(nèi)容如下:
    for (${iterable_type} ${iterable_element} : ${iterable}) {
        ${cursor}
    }
    Preview中的內(nèi)容,其實(shí)也就是該模板功能的實(shí)現(xiàn)方式。它指示了當(dāng)使用這個(gè)模板時(shí),應(yīng)該如何生成代碼。
    我目前還不知道${}通用元素的使用方法,主要是不知道所有的可被使用的${}通用元素及其意義。不過(guò)根據(jù)這些通用元素的名字,我們?nèi)匀荒軌虿聹y(cè)到它的意義: ${iterable_type} ,迭代器中包含的元素的類型; ${iterable_element},聲明的一個(gè)迭代器中元素的引用變量 ${iterable},迭代器對(duì)象本身的引用變量; ${cursor},光標(biāo)的位置。
    使用foreach模板:編輯Java源文件,先寫(xiě)入foreach,然后再接著使用組合快捷鍵Alt+/(使用Content Assist,即內(nèi)容提示或所謂的智能感知),此時(shí)就會(huì)出現(xiàn)foreach模板的提示,單擊該提示即可。
    創(chuàng)建模板,關(guān)鍵也是要弄清楚通用元素的使用方法。但對(duì)于不太復(fù)雜的模板,也可以不使用/少使用通用元素。不使用通用元素,會(huì)使模板的通用性差些。

    設(shè)置多個(gè)Source與Output目錄
    通過(guò)工程Properties-->Java Build Path-->Source,可以看到該工程的默認(rèn)Output目錄和所有Source目錄。
    可以通過(guò)“Add Folder...”或“Link Folder...”為工程增加Source目錄。
    打開(kāi)已存在的Source目錄的樹(shù),可以發(fā)現(xiàn)Output folder,一般它的值為Default output folder。選中并編輯它,就可以為這個(gè)Source目錄選擇Output目錄了。
    最直接的方法編輯工程根目錄下的.classpath文件,在該文件中加入如下形式的語(yǔ)句:
    <classpathentry kind="src" path="源文件目錄" output="Output目錄"/>
    即,增加一個(gè)Source目錄,并為它設(shè)置一個(gè)Output目錄。
    工程的默認(rèn)Output目錄的配置語(yǔ)句的形式如下:
    <classpathentry kind="output" path="
    Output目錄 "/>
    即,它不需要對(duì)應(yīng)特定的源文件目錄,工程的所有源文件目錄都與它關(guān)聯(lián)。

    指定Eclipse啟動(dòng)畫(huà)面(Splash)
    eclipse.exe -vmargs -Dosgi.splashLocation=Your_Splash_Path
    Your_Splash_Path 就是所指定的啟動(dòng)畫(huà)面的路徑,必須是一張bmp格式的圖片

    為什么Eclipse能夠編譯出不同版本的class文件?
    右鍵點(diǎn)擊Project-->Java Compiler-->JDK Compilance-->Compilance Level,在這個(gè)下拉列表框中可以選擇不同的編譯級(jí)別,目前包括1.3,1.4,5.0和6.0。
    Eclipse并不使用當(dāng)前系統(tǒng)中安裝的JDK(JRE)中的編譯器(javac)編譯工程源代碼,而是使用JDT中的編譯工具來(lái)進(jìn)行。這也就能夠解釋,為什么在系統(tǒng)中只安裝了JDK1.4.2,但Eclipse仍然能夠編譯出5.0或6.0的class文件。
    雖然Eclipse可以為每個(gè)工程選擇不同的編譯級(jí)別,且該編譯行為與JDK中的javac無(wú)關(guān),但在Eclipse中運(yùn)行class所需要的JRE卻必須是系統(tǒng)中已經(jīng)安裝了的。可以在主菜單Window-->Preferences-->Java-->Installed JREs中添加或選擇不同的JRE。

    updating...
    posted on 2006-10-12 11:29 John Jiang 閱讀(2420) 評(píng)論(2)  編輯  收藏 所屬分類: Eclipse

    評(píng)論

    # re: Eclipse Weed 2006-10-18 15:37 小林
    嘿嘿 這些玩意應(yīng)該早點(diǎn)做
    比如文檔的注釋,應(yīng)該在生成文檔時(shí)就把模板設(shè)置好
    每次生成一個(gè)文件的時(shí)候都會(huì)用這個(gè)模板
    又統(tǒng)一又美觀又實(shí)用
    多爽啊。  回復(fù)  更多評(píng)論
      

    # re: Eclipse Weed 2006-10-18 17:03 Sha Jiang
    @小林
    將“文檔”的生成“模板化”?
    如果有不少的文檔的形式是一樣的,可以試試這種方法。
    Good Luck!

    a cup of Java, cheers!
    Sha Jiang  回復(fù)  更多評(píng)論
      

    主站蜘蛛池模板: 午夜影视日本亚洲欧洲精品一区| 亚洲成人免费在线| 亚洲另类无码专区丝袜| 亚洲七久久之综合七久久| 2021在线永久免费视频| 日本免费高清一本视频| 亚洲国产婷婷香蕉久久久久久| 亚洲精品久久无码| 久久国产乱子免费精品| 在线A亚洲老鸭窝天堂| 亚洲一级毛片在线播放| 国产91免费视频| 亚洲乱码一区二区三区在线观看 | 亚洲VA综合VA国产产VA中| 国产精品亚洲av色欲三区| 最近中文字幕大全免费视频| 亚洲国产成人久久综合一区77| 深夜福利在线视频免费| 亚洲国产一二三精品无码| 日本免费一区二区三区| 亚洲免费观看在线视频| 日韩在线免费看网站| 一级毛片在线免费视频| 亚洲AV人无码综合在线观看| 91免费人成网站在线观看18| 亚洲人成色99999在线观看| 四虎精品亚洲一区二区三区| 中文字幕在线免费看线人| 国产一区二区免费在线| 亚洲jizzjizz在线播放久| 又黄又大又爽免费视频| 国内精品免费在线观看| 日韩亚洲人成在线| 黄色网址免费观看| 亚洲美女人黄网成人女| 波多野结衣久久高清免费| 国产成人无码区免费网站| 国产亚洲精品精华液| 精品熟女少妇AV免费观看| 国产高潮久久免费观看| 国产性爱在线观看亚洲黄色一级片|