SiteMap

2012年9月14日金曜日

使用Eclipse統一更改原始碼中的變數名稱


使用Eclipse統一更改原始碼中的變數名稱
(Refactor, 重構)

有時候會覺得變數名稱取的實再是不恰當, 但是
想要更改的時候, 整分程式碼裡頭已經不知道用到
哪裡去了, 變數名稱一改, 很多地方都會出錯.

剛好Eclipse有這個功能可以直接一口氣修改整個
程式碼裡頭的變數, 例如

有個BufferedWriter, 名稱叫 out , 我想要把它改成outBW, 以下步驟:



將游標移動到變數上面, 這時候eclipse會替變數上色,
001.png
滑鼠右鍵選擇 Refacotr -> Rename
002.png

eclispe跳出提示, 這時候修改名稱, 修改完成按下Enter
003.png
eclipse檢查完整個原始檔之後就完成了
004.png

2012年5月30日水曜日

Eclipse - 讓Eclipse 顯示程式碼行數


Eclipse 版本3.7.2
Eclipse 預設是不顯示程式碼行數的,若要顯示其設定如下 :

Windows

Preferences

General

Editors

Text Editors

show line numbers
(打勾)

直接在左邊滑鼠右鍵

2012年5月29日火曜日

Eclipse - 預設快速鍵


Ctrl+1 快速修復(最經典的快捷鍵,就不用多說了)

Ctrl+D: 刪除當前行

Ctrl+Alt+↓ 復制當前行到下一行(復制增加)

Ctrl+Alt+↑ 復制當前行到上一行(復制增加)

Alt+↓ 當前行和下面一行交互位置(特別實用,可以省去先剪切,再粘貼了)

Alt+↑ 當前行和上面一行交互位置(同上)

Alt+← 前一個編輯的頁面, 在用過F3跳轉之後特別有用, 基於Navigation History

Alt+→ 下一個編輯的頁面(當然是針對上面那條來說了)

Alt+Enter 顯示當前選擇資源(工程,or 文件 or文件)的屬性

Shift+Enter 在當前行的下一行插入空行(這時鼠標可以在當前行的任一位置,不一定是最後)

Shift+Ctrl+Enter 在當前行插入空行(原理同上條)

Ctrl+Q 定位到最後編輯的地方

Ctrl+L 定位在某行 (對於程序超過100的人就有福音了)

Ctrl+M 最大化當前的Edit或View (再按則反之)

Ctrl+/ 註釋當前行,再按則取消註釋

Ctrl+O 快速顯示 OutLine , 顯示目前類別的所有方法(Method)

Ctrl+T 快速顯示當前類的繼承結構

Ctrl+W 關閉當前Editer

Ctrl+K 參照選中的Word快速定位到下一個

Ctrl+E 快速顯示當前Editer的下拉列表(如果當前頁面沒有顯示的用黑體表示)

Ctrl+/(小鍵盤) 折疊當前類中的所有代碼

Ctrl+×(小鍵盤) 展開當前類中的所有代碼

Ctrl+Space 代碼助手完成一些代碼的插入(但一般和輸入法有沖突,可以修改輸入法的熱鍵,也可以暫用Alt+/來代替)

Ctrl+Shift+E 顯示管理當前打開的所有的View的管理器(可以選擇關閉,激活等操作)

Ctrl+J 正向增量查找(按下Ctrl+J後,你所輸入的每個字母編輯器都提供快速匹配定位到某個單詞,如果沒有,則在stutes line中顯示沒有找到了,查一個單詞時,特別實用,這個功能Idea兩年前就有了)

Ctrl+Shift+J 反向增量查找(和上條相同,只不過是從後往前查)

Ctrl+Shift+F4 關閉所有打開的Editer

Ctrl+Shift+X 把當前選中的文本全部變味小寫

Ctrl+Shift+Y 把當前選中的文本全部變為小寫

Ctrl+Shift+F 格式化當前代碼

Ctrl+Shift+P 定位到對於的匹配符(譬如{}) (從前面定位後面時,光標要在匹配符裡面,後面到前面,則反之)

下面的快捷鍵是重構裡面常用的,本人就自己喜歡且常用的整理一下(注:一般重構的快捷鍵都是Alt+Shift開頭的了)

Alt+Shift+R 重命名 (是我自己最愛用的一個了,尤其是變量和類的Rename,比手工方法能節省很多勞動力)

Alt+Shift+M 抽取方法 (這是重構裡面最常用的方法之一了,尤其是對一大堆泥團代碼有用)

Alt+Shift+C 修改函數結構(比較實用,有N個函數調用了這個方法,修改一次搞定)

Alt+Shift+L 抽取本地變量( 可以直接把一些魔法數字和字符串抽取成一個變量,尤其是多處調用的時候)

Alt+Shift+F 把Class中的local變量變為field變量 (比較實用的功能)

Alt+Shift+I 合併變量(可能這樣說有點不妥Inline)

Alt+Shift+V 移動函數和變量(不怎麼常用)

Alt+Shift+Z 重構的後悔藥(Undo)
(注由於csdn的blog經常上不去,大家有空可以去http://spaces.msn.com/members/samlinzhang/看看我的blog)
本blog個人添加:
F2 修改文件名字,有時這對於復制名字很有用,個人非常喜歡。
Ctrl+Shift+O 最高效的快捷鍵,導入未導入的包,刪除多餘的包。
Ctrl+Shift+/ 註釋代碼塊,java和jsp文件有所不同。
Ctrl+Shift+W 關閉當前所有打開文件。

Ctrl+Shift+L 彈出所有快捷方式提示框

Alt+Shift+X 彈出運行ant、java文件、junit等快捷方式,非常實用。
TemplateAlt + /
修改處:窗口->喜好設定->工作台->按鍵->編輯->內容輔助。
個人習慣:Shift+SPACE(空白)
簡易說明:編輯程序代碼時,打sysout +Template激活鍵,就
會自動出現:System.out.println(); 
按下右下角Ctrl左邊的按鍵,將彈出所在地點的菜單,省了右鍵,真好。

Ctrl+F2 將鍵盤游標移動到想要尋找api定義的方法上面(另:滑鼠對該方法點一下), 然後按下
             Ctrl+F2, Eclipse會連線到Orcal網站查詢該api

2012年5月24日木曜日

在Firefox用筆記本Note來檢視原始檔

在Firefox用筆記本Note來檢視原始檔

可以用以下方式, 變更 Firefox 檢視原始檔的程式 :

1) 網址列輸入 about:config
2) 輸入篩選條件 view_source.editor.external,  雙擊滑鼠即可從 false 變更為 true
3) 輸入篩選條件 view_source.editor.path,  雙擊滑鼠設定為 "要使用的程式路徑"
4) 重新啟動 Firefox 即可.

2012年5月11日金曜日

如何關掉drwtsn32

如何關掉drwtsn32

關鍵字:關閉、Dr. Watson、drwtsn32、程式執行錯誤、偵錯程式

Dr.Watson是 Windows的系統維護工具,當系統或軟體執行錯誤時,它會記錄下錯誤發生時的資訊,供程式系統管理人員使用
不過這個工具對於一般的使用者來說,幾乎沒有用處,乾脆將此功能取消,避免程式錯誤時系統要花時間撰寫用不到的記錄檔,還可以節省硬碟空間喔...


每當電腦程式執行錯誤時
drwtsn32.exe這Debug程式就會執行一次
並出現錯誤訊息,可能會造成困擾

而這個是可以關掉的,遇到這情況請依照以下步驟,

方法一:
按下桌面左下角的"開始",點選功能選單中的"執行",在出現的"執行"對話盒中的"開啟"方框中輸入"DRWTSN32",再按下"確定"。
接著會出現"Dr.Watson for Windows"對話盒,取消"選項"方塊中所有項目的勾選,再按下"確定"


方法二:
(注意:不正常的修改登錄可能導致系統發生問題)

將以下藍綠色文字,用記事本存成名為 drwtsn32.reg
副檔名為reg的登錄項目檔,並雙擊執行登錄

==================================
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug]
"Auto"="0"
"Debugger"="drwtsn32 -p %ld -e %ld -g"
"UserDebuggerHotKey"=dword:00000000

==================================
之後就不會再出現訊息了
(像是卡巴會一直跳出煩人的訊息,這也是個解決方式)

註:
Auto,是指當錯誤發生時,是否執行預設的Debug程式(0表否;1表是)
Debugger,是Debug程式路徑及指令,這可以不用管它
UserDebuggerHotKey,是使用者Debug程式快速鍵,也可以不管它


如何刪除以前當機的傾印紀錄:
請將
C:\Documents and Settings\All Users\Application Data\Microsoft\Dr Watson
底下 user.dmp與 drwtsn32.log檔案刪除即可

說明文件(drwtsn32.chm)請查閱:
C:\WINDOWS\Help\drwtsn32.chm

2012年2月24日金曜日

安裝GWT

想要在Eclipse上面使用GWT的話, 以下是安裝流程:

01.
安裝Eclipse, 到官網下載(此次下載的是Eclipse Class)
到現在為止(2012-02-24)的版本是3.7, 解壓縮後找個地方放即可使用.
02.
安裝ADT  Plugin for Eclipse套件
pic
03.
安裝Eclipse的GWT Plugin, 安裝方法為Help -> Install New Software, 加入下面這個 Repository:
http://dl.google.com/eclipse/plugin/3.7
如果手上的Eclipse不是3.7的話, 請隨著自己的版本更改url的版號
pic

PS.
如果沒安裝ADT Plugin for Eclipse就直接安裝GWT Plugin的話, 會出現以下的err message,
------------------------------------------------------------------------------
Cannot complete the install because one or more required items could not be found.
  Software being installed: Google App Engine Tools for Android 2.5.1.v201201120043-rel-r37 (com.google.gdt.eclipse.mobile.android.feature.feature.group 2.5.1.v201201120043-rel-r37)
  Missing requirement: com.google.gdt.eclipse.mobile.android 2.5.1.v201201120043-rel-r37 requires 'bundle com.android.ide.eclipse.adt 12.0.0' but it could not be found
  Cannot satisfy dependency:
    From: Google App Engine Tools for Android 2.5.1.v201201120043-rel-r37 (com.google.gdt.eclipse.mobile.android.feature.feature.group 2.5.1.v201201120043-rel-r37)
    To: com.google.gdt.eclipse.mobile.android [2.5.1.v201201120043-rel-r37]
-------------------------------------------------------------------------------

2012年2月17日金曜日

Eclipse - 查詢原始碼遇到Source not found...

很多朋友遇到過這樣的問題:
  開發過程中會經常查看所引用的類別(介面或方法)的源碼,但是往往在查看JDK中的類別(介面或方法)時出現提示頁面 「Source not found」,這是因為Eclipse默認設定的自帶的JDK是沒有源src的,那麼如何引入JDK和框架的源碼呢?

這裡介紹兩個設置方法:
  (查看Spring、Hibernate、Struts等框架的原始碼需要下載他們的原始碼文件,設定方法相同)

方法一:
  點擊類別(介面或方法),右鍵Open Declaration或者按F3鍵出現提示頁面「Source not found」,點擊頁面中的「Attach Source...」按鈕,點擊彈出窗口中的「External File...」按鈕找到JDK的原始碼點擊OK按鈕,設定完成
  一般JDK的源碼在安裝目錄下有個文件叫:src.zip就是,如果是spring的方法,用同樣方法,添加spring的源文件的壓縮包(應該另外下載)。

方法二:
  進入Preferences設置窗口aJavaa選擇Installed JREsa更改默認選擇的JDK為自定的有源碼的(沒有設定的點擊「Add...」添加,或者點擊「Search...」按鈕查找)aOK!
  另,在Preferences設置的JAVA / Build Path / Classpath Variables下有一個JAR_SRC變量,該變量負責設置源代碼路徑,但是該變量是不可修改的,必須由系統自動檢測。

補充:查看所引用的類別(介面或方法)的原始碼方法:
方法一:將該類別(介面或方法)名稱反白後滑鼠右鍵彈出選單,選擇Open Declaration或者直接按F3鍵,即可進入原始碼。
方法二:按住Ctrl鍵,滑鼠點擊該類別(介面或方法),即可進入原始碼。
   成功後, 原始碼會開啟在新的table.