0. 快捷鍵
================================================================================
編輯:
Ctrl+Shift+L 顯示所有快捷鍵
Ctrl+K 參照選中的詞(Word)快速定位到下一個(gè)
Ctrl+Shift+K 參照選中的詞(Word)快速定位到上一個(gè)
Ctrl+O 快速顯示OutLine
Ctrl+T 快速顯示當(dāng)前類的繼承結(jié)構(gòu)
Ctrl+Shift+X 把選中文本全部改為大寫
Ctrl+Shift+Y 把選中文本全部改為小寫
Ctrl+Shift+F 按照當(dāng)前的配置文件格式化源代碼
Ctrl+L 彈出行定位框以便定位到某一行
Ctrl+Numpad_Divide
Ctrl+/(小鍵盤) 使代碼折疊可用
Ctrl+Numpad_Multify
Ctrl+*(小鍵盤) 展開當(dāng)前類中的所有代碼
Ctrl+Shift+Numpad_Divide
Ctrl+Shift+/(小鍵盤) 折疊所有,如果不能全部成功折疊,
將光標(biāo)移到文檔最后試著或多按幾次
折疊當(dāng)前類中的所有代碼
Ctrl+1 快速修正,需要導(dǎo)包的時(shí)候出現(xiàn)導(dǎo)包提示界面,
Ctrl+Q 定位到最后編輯的地方
Ctrl+Shift+m 導(dǎo)入當(dāng)前行上需要的包(add import)
Ctrl+Shift+o 導(dǎo)入所有需要的包(organize imports)
Shift+Enter 在當(dāng)前行的下一行插入行
Shift+Ctrl+Enter 在當(dāng)前行的上一行插入行
Alt+/ 語法補(bǔ)充快捷
Ctrl+MouseLeft 當(dāng)按住Ctrl時(shí),將Mouse移動(dòng)到一個(gè)類或類的方法或?qū)傩詴r(shí),
左鍵點(diǎn)擊會(huì)進(jìn)入到源文件內(nèi)進(jìn)行查看
如果沒找到源文件,而需要指定Sourece,
比如說JDK自身的src.zip文件或源文件所在的文件夾
Ctrl+/ == Ctrl+Shift+C 注釋選定行或取消注釋
Ctrl+Shift+/ 用*...... */注釋選定行
Ctrl+Shift+\ 取消/*...... */注釋
Ctrl+D 刪除當(dāng)前行
Shift+< 在當(dāng)前位置插入成對(duì)的尖括號(hào):<>
Ctrl+Alt+down 復(fù)制當(dāng)前行到下一行
Ctrl+Alt+up 復(fù)制當(dāng)前行到上一行
Ctrl+Alt+J Join Lines連接行
Alt+down 當(dāng)前行和下面一行交換位值
Alt+up 當(dāng)前行和上面一行交換位值
選定光標(biāo)所在的行通過用這兩個(gè)快捷各執(zhí)行一次來完成
Alt+left 前一個(gè)編輯的代碼頁面或在當(dāng)前頁面中上一個(gè)光標(biāo)的位置
Alt+right 下一個(gè)編輯的代碼頁面或在當(dāng)前頁面中下一個(gè)光標(biāo)位置
(當(dāng)使用了Alt+←后)
Alt+Shift+O (或點(diǎn)擊工具欄中的Toggle Mark Occurrences按鈕)
當(dāng)點(diǎn)擊某個(gè)標(biāo)記時(shí)可使本頁面中其他地方的此標(biāo)記黃色凸顯,
并且窗口的右邊框會(huì)出現(xiàn)白色的方塊,點(diǎn)擊此方塊會(huì)跳到此標(biāo)記處
Shift+Home 選定光標(biāo)處到行首的內(nèi)容
Shift+End 選定光標(biāo)處到行尾的內(nèi)容
Ctrl+Shift+Home 選定光標(biāo)處到首行行首的內(nèi)容
Ctrl+Shift+End 選定光標(biāo)處到尾行行尾的內(nèi)容
Ctrl+Shift+P 定位到與之成對(duì)匹配的括號(hào){或)
(從前面定位后面時(shí),光標(biāo)要在匹配符之后,從后往前定位,反之)
Tab與Shift+Tab 選中要移動(dòng)的代碼后,按Tab鍵右移,按Shift+Tab鍵左移
Ctrl+up
Ctrl+down 上下滾動(dòng)編輯頁面
查找:
Ctrl+Shift+R 相當(dāng)于Navigate->Open Resource...
輸入Java源文件名或類名,會(huì)按通配的方式列出符合條件的.java源文件
Ctrl+J 正向增量查找(按下Ctrl+J文件你所輸入的每個(gè)字母,
編輯器都提供快速匹配定位到某個(gè)單詞,如果沒有,
則在stutes line中顯示沒有找到了,查一個(gè)單詞時(shí),特別實(shí)用,
這個(gè)功能Idea兩年前就有了)
Ctrl+Shift+J 反向增量查找(和上條相文件只不過是從后往前查)
窗口:
Ctrl+M 窗口最大化與恢復(fù)大小轉(zhuǎn)換
最大化當(dāng)前的Edit或View(再按則恢復(fù))
Ctrl+W 關(guān)閉當(dāng)前Editor
Ctrl+Shift+F4 關(guān)閉所有打開的Editor
Ctrl+E 快速顯示當(dāng)前Editor的下拉文檔列表
Ctrl+Shift+E 顯示管理當(dāng)前打開的所有的View的管理器(可以選擇關(guān)閉,激活等操作)
F2 當(dāng)鼠標(biāo)放在一個(gè)標(biāo)記處出現(xiàn)Tooltip時(shí)候,
按下F2會(huì)鉚釘顯示的 Tooltip 框
F3 跳到聲明或定義(源文件)處
Alt+Enter 顯示當(dāng)前選擇資源(工程,or 文件 or文件)的屬性
Ctrl+PgUp
Ctrl+PgDown 切換代碼窗口的各個(gè)文檔,
如果切換到頭就會(huì)打開"Show List"下拉框
在此下拉框里顯示有最近曾打開的文件,
連續(xù)按可移動(dòng)選中項(xiàng)
對(duì)于XML文件是切換代碼和圖示窗口
Alt+Shit+w 在光標(biāo)處彈出選擇view的菜單
在Package窗口下,彈出Navigator與Properties的選擇菜單
Alt+Shift+Q,Q 彈出"Show View"選擇界面
Alt+Shift+Q,T Show View(View: Hierarch)
Alt+Shift+Q,B Show View(View: Breakpoints)
Alt+Shift+Q,H Show View(View: Cheat Sheets)
Alt+Shift+Q,C Show View(View: Console)
Alt+Shift+Q,L Show View(View: Error Log)
Alt+Shift+Q,Z Show View(View: History)
Alt+Shift+Q,J Show View(View: Javadoc)
Alt+Shift+Q,O Show View(View: Outline)
Alt+Shift+Q,P Show View(View: Package Explorer)
Alt+Shift+Q,X Show View(View: Problems)
Alt+Shift+Q,S Show View(View: Search)
Alt+Shift+Q,Y Show View(View: Synchronize)
Alt+Shift+Q,V Show View(View: Variables)
Debug:
F5 單步調(diào)試進(jìn)入函數(shù)內(nèi)部
F6 單步調(diào)試不進(jìn)入函數(shù)內(nèi)部
F7 由函數(shù)內(nèi)部返回到調(diào)用處
F8 一直執(zhí)行到下一個(gè)斷點(diǎn)
Refactor 重構(gòu)(一般以Alt+Shift開頭):
Alt+Shift+R 重命名被選中的變量
Alt+Shift+M 抽取方法
Alt+Shift+C 修改函數(shù)結(jié)構(gòu)
Alt+Shift+L 抽取本地變量
Alt+Shift+F 把Class中的local變量變?yōu)閒ield變量(MyEclipse中需要自定義)
Alt+Shift+I 合并變量(可能這樣說有點(diǎn)不妥Inline)
Alt+Shift+V 移動(dòng)方法和變量不怎么常用
Alt+Shift+Z 重構(gòu)的后悔藥(Undo)
================================================================================
Ctrl+I格式化激活的元素Format Active Elements?
Ctrl+Shift+Space提示信息即Context Information?
================================================================================
1. 更改快捷鍵設(shè)置(自定義快捷鍵)
================================================================================
代碼的自動(dòng)完成:
(1) Windows->Preference->General->Keys
是管理快捷鍵的地方
在這里的type filter text處輸入Content Assist,
找到要修改的"Content Assist"
在下面會(huì)出現(xiàn)"Content Assist",用鼠標(biāo)選中"Content Assist",
在下面的"Binding"處按自己需要的快捷鍵組合,比如Alt+/
在"When"中選擇"Editing Text"
(2) Windows->Preference->Java->Editor->Templates
這里是管理Java編輯器模板的地方
比如找到"Name"為sysout的,可以看到其"Preview:"處有:
System.out.println(${word_selection}${});${cursor}
其表示在輸入sysout后,按Alt+/就可以自動(dòng)完成System.out.println();的輸入
再比如找到"Name"為main的,可以看到其"Preview:"處有:
public static void main(String[] args) {
${cursor}
}
表示在輸入main后,按Alt+/就可以在彈出的選項(xiàng)中選擇main方法,
自動(dòng)完成main方法的格式化輸入
自定義抽取局部變量為成員變量:
Windows->Preference->General->Keys
在這里的type filter text處輸入Convert a local variable to a field,
如果看到Binding一欄處還沒有綁定快捷鍵,
就將光標(biāo)移到下面的Binding文本框內(nèi),然后按Alt+Shift+F,
然后OK即可.
================================================================================
2. 整合Javadoc文檔到MyEclipse
================================================================================
在MyEclipse中左邊的"Package Explorer"窗口中選中一個(gè)JAR包
右鍵->屬性>Javadoc Location可以指定其JAR包所對(duì)應(yīng)的Java文檔的位置,
其中上面的"Javadoc URL"可以點(diǎn)擊Browse..."選擇文檔所在的目錄,如:
javaee.jar在我電腦中的路徑是這樣的:file:/D:/Program/Sun/SDK/docs/api/
選擇完后,可以點(diǎn)擊Browse..."下的"Validate..."進(jìn)行有效性驗(yàn)證
一般所選擇的目錄下面應(yīng)該有index.html或相應(yīng)的package-list文件.
其中下面的"Javadoc in archive"是用來選擇一個(gè)打包文檔jar或zip的"
選中"External file"表示我們需要從外部而不是MyEclipse工作空間中選擇這個(gè)文檔,
然后點(diǎn)擊Archive path后的"Browse...",選擇一個(gè)有Javadoc打包的文件
比如我電腦中的路徑是這樣的"D:\Program\Sun\SDK\docs\api_doc.zip
注意從sun公司網(wǎng)站下載的java_ee_sdk-5_03-javadocs.zip其結(jié)構(gòu)是這樣的"
java_ee_sdk-5_03-javadocs.zip |
|docs|
|api|
| |index.html
| |package-list
|
|legal
不能直接選中所下載的java_ee_sdk-5_03-javadocs.zip,而要重新打包,
將其中的index.html那一級(jí)目錄置為重新打包后的頂層目錄
或者不用重新打包,在Archive path:中找到下載的java_ee_sdk-5_03-javadocs.zip文件
再在其下面的Path within archive:中選擇相應(yīng)的路徑即可
Archive path:D:\Program\Sun\SDK\java_ee_sdk-5_03-javadocs.zip
Path within archive:docs/api
這樣,當(dāng)在編寫一個(gè)源Java源文件的時(shí)便將光標(biāo)定位到一個(gè)類或接口上的時(shí)候,
如:
選中HttpServlet,然后按F1,在窗口右邊就會(huì)出現(xiàn)Help窗口,
點(diǎn)擊窗口中的Javadoc for 'javax.servlet.http.HttpServlet',
就可以在窗口中出現(xiàn)相應(yīng)的API幫助文檔了.
以上的對(duì)相應(yīng)的JAR包或相關(guān)框架的DOC的設(shè)置,
那么對(duì)于JDK的DOC的設(shè)置,可以使用下面的方式:
Windows->Preferences
輸入JRE,然后選中Java->Installed JREs
在右邊選中需要進(jìn)行DOC文檔位置設(shè)置的JRE,然后選擇"Edit",
在出現(xiàn)的界面中選中相應(yīng)的jar包,然后點(diǎn)擊右邊的"Javadoc Location..."進(jìn)行設(shè)置.
================================================================================
3. 無法正常啟動(dòng)
================================================================================
MyEclipse啟動(dòng)遇到內(nèi)部錯(cuò)誤總啟動(dòng)不了的時(shí)便
將Workspace下的.metadata目錄刪除重啟即可
================================================================================
4. 標(biāo)記斷點(diǎn):
================================================================================
在java視圖中,直接在你要設(shè)置斷點(diǎn)的那行的最左邊,雙擊即可,右鍵的彈出菜單中也有這個(gè)選項(xiàng)
Debug:
選擇debug(F11,Run菜單中的debug)即可,自動(dòng)進(jìn)入debug視圖,
用Step into(F5)能進(jìn)入到被調(diào)用方法的跟蹤
用Step over(F6)進(jìn)行單步調(diào)試
================================================================================
5. 更改 Web Project 的 Web Context-root:
================================================================================
右鍵點(diǎn)擊Web項(xiàng)目->Properties->MyEclipse->Web
在右邊的界面的Context Root中可進(jìn)行更改設(shè)置.
如果在Tomcat沒運(yùn)行的時(shí)便修改一個(gè)以前已部署的Web應(yīng)用的Web Context-root,
此時(shí)MyEclipse會(huì)將以前此Web應(yīng)用的部署刪除
如果在Tomcat運(yùn)行著的時(shí)候,修改一個(gè)已部署后正在使用(存在正在訪問的客戶端)的Web應(yīng)用
的Web Context-root,MyEclipse不會(huì)將此Web應(yīng)用的部署刪除,而是出現(xiàn)一個(gè)黃色的感嘆號(hào)圖標(biāo).
由于Web Context-root被更改此部署其實(shí)已失效,
需要?jiǎng)h除原來的部署,重新在Tomcat中"Add Deployment..."
================================================================================
6. 文件上傳相關(guān)
================================================================================
文件上傳路徑,如果不寫相對(duì)路徑或絕對(duì)路徑
那么會(huì)存入D:\Program\Apache\apache-tomcat-6.0.18\bin目錄
================================================================================
7. MyEclipse各種相關(guān)的文件格式的編輯器字體顯示設(shè)置
================================================================================
window->preference->General->Appearence->Colors and Fonts
在其右邊有這么幾項(xiàng)
Basic:
Basic colors and fonts used throughout workbench dialogs and editors.
基本上指所有對(duì)話框和編輯器中的字體,包括jsp,ant的xml等文件的字體顯示.
如果需要對(duì)XML等編輯器的字體進(jìn)行設(shè)置,先設(shè)置這里,
對(duì)于控制臺(tái)的字體如果這里設(shè)置大了看著不舒服,可專門到Debug下設(shè)置控制臺(tái)的字體.
CVS:
版本庫相關(guān)的顯示字體
Debug:
控制臺(tái)的輸出字體
Java:
Java源文件編輯器字體
JavaScript:
JavaScript字體
Structured Text Editors:
結(jié)構(gòu)化文本的字體,如xml,xml schemal等
Text Compare:
文本比較器的字體
View and Editor Folders:
Colors and fonts used by the default Eclipse presentation.
->Java Editor Text Font然后點(diǎn)Change
================================================================================
7-1. MyEclipse中UML圖中的字體的設(shè)置
================================================================================
window->preference->MyEclipse->UML1
在右邊的Nodes中,有Header font與Body font的設(shè)置.
================================================================================
8. 某一文件的存儲(chǔ)字符編碼設(shè)置
================================================================================
在Eclipse中不能保存中文時(shí),可以設(shè)置一下Eclipse的編碼方式為gbk等支持中文的字符編碼方式。
可通過以下方式進(jìn)行修改:
(1) Window->General->workspace
->在右邊的界面中的"Text file encoding"下設(shè)置;
(2) 鼠標(biāo)右鍵點(diǎn)擊所需要修改的文件,或File->Properties
->在右邊的界面中的"Text file encoding"下設(shè)置;
(3) 鼠標(biāo)右鍵點(diǎn)擊需要修改字符集編碼的文件-->proterties(Alt+Enter)-->"Resource",
在右邊窗口中的下面有"Text file encoding",
在Other處填入需要的字符集編碼,如GBK或GB18030或UTF-8等;
================================================================================
8-1. 某種格式的文件的存儲(chǔ)字符編碼設(shè)置
================================================================================
Window-->Preferences-->MyEclipse-->Files and Editors,
在這里,可以設(shè)置多種文件格式的Encoding,比如說JSP的,
找到JSP,在右邊就會(huì)出現(xiàn)一個(gè)界面,找到"The following encoding will apply:",
將Encoding:設(shè)置為自己所需要的字符編碼,比如說ISO 10646/Unicode(UTF-8)
================================================================================
9. 自定義代碼格式
================================================================================
"Windows"-->"Preferences"-->"Java"-->"Code Style"-->"Formatter"
================================================================================
10. 編輯JSP文檔,XML等文檔反應(yīng)慢的問題
================================================================================
原因:
(1) 新建的工程中加入了JAVA EE的lib庫
庫中的所使用的javax.servelet.jar等這些個(gè)包中的javadoc location位置,
被設(shè)置成了官方網(wǎng)站的網(wǎng)址,
這樣每次提示的時(shí)候都要去官方網(wǎng)站去找doc,所以導(dǎo)致myeclipse會(huì)很忙
當(dāng)禁用網(wǎng)卡或者拔掉網(wǎng)線的時(shí)便就不會(huì)在卡了
(2) JSP編輯器使用了MyEclipse Visual JSP Designer
最終解決方法
(1) [Window]->[Preferences]->[MyEclipse]->[JavaEnterprise Project]->[Library Sets]
[JAVA EE 5.0][J2EE 1.4]和[J2EE 1.3]下的javax.servelet.jar等包,
點(diǎn)開選擇[javadoc location]這個(gè)節(jié)點(diǎn),雙擊后在對(duì)話框中,
把地址去掉為空或者選擇你本地javadoc地址,即可解決jsp自動(dòng)提示卡和慢的問題
(2) [Window]->[Preferences]->[General]->[Editors]->[File Associations]
在右邊的上半部分列出的文件擴(kuò)展名中選中*.jsp,
在右邊的下半部分列出的編輯器中選中MyEclipse JSP Editor,
點(diǎn)擊右邊的"Default",將這個(gè)編輯器設(shè)置為默認(rèn)的編輯器,
這樣當(dāng)你雙擊一個(gè)jsp文檔的時(shí)候,就會(huì)默認(rèn)使用這個(gè)編輯器打開JSP文檔了.
================================================================================
11. MyEclipse版本的區(qū)別
================================================================================
blue
專為IBM開發(fā)的,功能最全的版本
M(Milestone)
Milestone版本,是比beta版還要早的版本
可以看作是下一代正式版本的一個(gè)試探性改進(jìn)測(cè)試
GA(Generally Available)
正式版MyEclipse
目前(2009-12-23)8.0GA是最新的
================================================================================
12. 關(guān)閉myeclipse的Quick Update自動(dòng)更新功能
================================================================================
Windows > Preferences > MyEclipse > Community Essentials,
把選項(xiàng) "Search for new features on startup"的前勾去掉即可
================================================================================
13. MyEclipse內(nèi)存使用相關(guān)以及JVM內(nèi)存分配
================================================================================
1) PermGen space簡(jiǎn)介
PermGen space的全稱是Permanent Generation space,
是指內(nèi)存的永久保存區(qū)域。
OutOfMemoryError: PermGen space從表面上看就是內(nèi)存益出,
解決方法也一定是加大內(nèi)存。
說說為什么會(huì)內(nèi)存益出:
* 這一部分用于存放Class和Meta的信息,Class在被Load的時(shí)候被放入PermGen space區(qū)域,
它和和存放Instance的Heap區(qū)域不同。
* GC(Garbage Collection)不會(huì)在主程序運(yùn)行期對(duì)PermGen space進(jìn)行清理,
所以如果你的APP會(huì)LOAD很多CLASS的話,就很可能出現(xiàn)PermGen space錯(cuò)誤。
這種錯(cuò)誤常見在web服務(wù)器對(duì)JSP進(jìn)行pre compile的時(shí)候。
如果你的WEB APP下都用了大量的第三方j(luò)ar,
其大小超過了jvm默認(rèn)的大小(4M)那么就會(huì)產(chǎn)生此錯(cuò)誤信息了。
13_1.Tomcat內(nèi)存溢出的解決方法:
手動(dòng)設(shè)置MaxPermSize大小, 修改TOMCAT_HOME/bin/catalina.sh,
在echo "Using CATALINA_BASE: $CATALINA_BASE"上面加入以下行
JAVA_OPTS="-server -XX:PermSize=64M -XX:MaxPermSize=128m
建議:
將相同的第三方j(luò)ar文件移置到tomcat/shared/lib目錄,這樣可以減少jar文檔重復(fù)占用內(nèi)存
================================================================================
14. Eclipse 內(nèi)存溢出或不能啟動(dòng)或死掉的解決
================================================================================
這一段時(shí)間,Eclipse總是死掉,幾乎是稍微操作快一點(diǎn)就會(huì)死掉,幾分鐘一次,
搞得人郁悶至極。浪費(fèi)了不少時(shí)間,在網(wǎng)上搜了下,看到很多朋友也出現(xiàn)類似的情況,
在網(wǎng)上求救,但是網(wǎng)上的辦法都只是說通過修改eclipse.ini文件來加大Eclipse的內(nèi)存。
自己試了下,發(fā)現(xiàn)不管用。今天,又死掉了,不過爆出一個(gè)經(jīng)常出現(xiàn)的錯(cuò)誤,
大意是:permgen space導(dǎo)致內(nèi)存溢出。
解決辦法如下:
在eclipse.ini配置文件中加上以下兩行
-XX:PermSize=128M
-XX:MaxPermSize=128M
加上上2行后,我的eclipse.ini文件如下所示:
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
512m
-vmargs
-Xms256m
-Xmx512m
-XX:PermSize=128M
-XX:MaxPermSize=128M
這里的內(nèi)存大小根據(jù)自己的物理內(nèi)存情況來決定吧。
從網(wǎng)上的資料看PermSize大一點(diǎn)肯定更好,而且最好是設(shè)置PermSize和MaxPermSize一樣大。
理由如下: PermSize 和 MaxPermSize如果設(shè)置為相同還可以在一定程度上提高性能,
因?yàn)镻ermSize在不斷的變化中會(huì)需要轉(zhuǎn)移其中的數(shù)據(jù)。
如果固定了以后,則可以減少每次擴(kuò)大PermSize帶來的性能損失。
15. 讓你的eclipse也能顯示JVM當(dāng)前內(nèi)存使用量
================================================================================
1) 在eclipse或MyEclipse目錄下建立一個(gè)文件文件名options,
文件內(nèi)容:
org.eclipse.ui/perf/showHeapStatus=true
2) 有兩種方式來啟用這個(gè)配置文件:
(1) 用命令方式啟動(dòng):
D:\MyEclipse\eclipse.exe -debug options -vm javaw.exe
或者直接右鍵eclipse的快捷方式的"目標(biāo)"中填入這行
(2) MyEclipse.ini中前兩行加入下面兩行:
-debug
options
修改ini文件是要注意備份。
3) 啟動(dòng)eclipse,就可以看到下面的狀態(tài)欄會(huì)顯示當(dāng)前JVM內(nèi)存使用量
另外還可以強(qiáng)制進(jìn)行垃圾收集。
加啟動(dòng)參數(shù)和在ini中寫是一樣的,都是啟動(dòng)的配置
4) eclipse對(duì)于JRE的加載順序:
首先執(zhí)行 -vm 參數(shù);如果沒有-vm參數(shù),
則查找eclipse\jre子目錄,如果沒有找到,
eclipse最后才查找在系統(tǒng)中注冊(cè)的jre
-------------------------------------------------------------------------------
以下是寫在MyEclipse目錄下的Myeclipse.ini中內(nèi)容的例子:
-debug
options
-vm
javaw.exe
-vmargs
-Xms256m
-Xmx512m
-XX:PermSize=128M
-XX:MaxPermSize=256M
在Eclipse目錄下建一文件options(無任何擴(kuò)展名),其內(nèi)容為:
org.eclipse.ui/perf/showHeapStatus=true
加了這個(gè)后Eclipse會(huì)在下面狀態(tài)欄顯示垃圾回收的東東.
================================================================================
15.1 Eclipse狀態(tài)欄顯示JVM內(nèi)存使用情況的改進(jìn)
================================================================================
1. 打開記事本,輸入以下內(nèi)容org.eclipse.ui/perf/showHeapStatus=true
然后保存于eclipse根目錄下,文件名為options,沒有文件擴(kuò)展名。
2. 用-debug options -vm javaw.exe這條命令啟動(dòng)eclipse:
在快捷方式的目標(biāo)中寫入如下"C:\eclipse\eclipse.exe -debug options -vm javaw.exe"
3. 重啟就可以啦
================================================================================
15.2 MyEclipse8.0中狀態(tài)欄顯示JVM內(nèi)存(Show heap status)使用情況
================================================================================
在MyEclpise8.0中簡(jiǎn)單了,windows->Preferences->General
在其右邊的界面中,找到"Show heap status",并勾選上,然后確定即可;
================================================================================
16. MyEclipse7.5的Content Assist不起作用了
================================================================================
(1) 在window->Preferences->Java->Editor->Content Assist
中找到Enable auto activation,將其選項(xiàng)勾上;
(2) window->Preferences->Java->Editor->Content Assist->Advanced
上面的選項(xiàng)卡Select the proposal kinds contained in the 'default' content assist list:中,
把 Other Java Proposals 選項(xiàng)打上勾就可以了。
================================================================================
17. MyEclipse中啟動(dòng)Tomcat,JBoss等服務(wù)器里,控制臺(tái)不顯示啟動(dòng)信息
================================================================================
現(xiàn)象:
在控制臺(tái)為:
no consoles display at this time
但服務(wù)器已經(jīng)啟動(dòng),可正常使用.
MyEclipse7.5 Tomcat6.0.18 JBoss4.2.3.GA
之前正常,今天突然就這樣了.
解決方法:
在MyEclipse菜單中window-->preferences-->Java-->Installed JREs
中,Add自己安裝的JDK,
而不要使用MyEclipse自帶的JDK"com.sun.java.jdk.win32.x86_1.6.0.013"
或者:
選擇Tomcat6.x-->JDK-->Add,點(diǎn)Browse找到自己的JDK的安裝路徑.
如果JDK已配置為自己安裝的了,就定位到
window-->preferences-->MyEclipse Enterprise Workbench-->Servers
隨便選擇一個(gè)服務(wù)器,比如Tomcat6.x-->JDK,
只要定位到JDK,就OK了,
或者定位到window-->preferences-->Java-->Installed JREs,
只要一點(diǎn)Installed JREs,就OK了.
這個(gè)是myeclipse7.5本身的問題,莫名其妙.
================================================================================
18. 去掉Show In Breadcrumb顯示出來的導(dǎo)航條
================================================================================
按下快捷鍵Alt+Shift+B或者右鍵單擊后選中了Show in Breadcrumb時(shí),
就會(huì)在編輯器Editor上方出現(xiàn)一個(gè)快速導(dǎo)航條,如果想去掉它可以這樣來解決:
定位到Window -> Customize Perspective -> Commands
在"Available command groups"下面找到"Java Editor Persentation",
確定其是被勾選的.然后OK退出設(shè)置界面.
在菜單上會(huì)有一個(gè)Toggle Breadcrumb的快捷按鈕
(一般在那一長行快捷按鈕的右邊,也就是切換Java,MyEclipse等視圖按鈕的左邊),
可看見其狀態(tài)是被選中的,點(diǎn)擊這個(gè)按鈕圖標(biāo),即可取消(再次點(diǎn)擊這個(gè)按鈕圖標(biāo)又出現(xiàn)Breadcrumb)。
================================================================================
19. 顯示被@Deprecated標(biāo)注過和方法為一條橫線穿過:
================================================================================
定位到Window->Preferences->Java->Compiler->Errors/Warnings;
將其右邊的"Deprecated and restricted API"下的選項(xiàng)勾選上,然后OK.
================================================================================
20. 恢復(fù)不小心被刪除的文件
================================================================================
恢復(fù)文件:
選中你需要恢復(fù)文件的Project或package,鼠標(biāo)右擊"Restore from Local History..."
然后直接選中你需要恢復(fù)的文件,點(diǎn)擊"Restore"就OK了。
恢復(fù)類語句塊:
選中你需要恢復(fù)的塊,鼠標(biāo)右擊"Local History..."-->"Replace with..."
或"Restore From..."然后看清你要恢復(fù)的塊。OK就行了。
當(dāng)然上面只是針對(duì)Java源文件來說的,對(duì)于WebRoot下的JSP等文件的恢復(fù),
需要選中其文件,鼠標(biāo)右擊"Replace with"->"Local History"->
================================================================================
21. 增強(qiáng)Content Assist的提示功能
================================================================================
(1) windows->preferences->Java->Editor->Content Assist
找到右下方的Auto-Activation(自動(dòng)激活),
在Auto activation triggers for Java:的右邊框中的.后加入abc,
(加這個(gè)的目的是為了好在后面查找定位),點(diǎn)擊"OK",回到主界面,
(2) "File"菜單中選擇"Export...",
在彈出的界面中選擇"General->Preferences"->"Next",
在這個(gè)界面中,先勾選上"Keys Preferences"(注意先勾選),
再注意選中上方的"Export all", 在"To preference file:"框的右邊點(diǎn)擊"Browse...",
選擇導(dǎo)出路徑以及為導(dǎo)出文件取一個(gè)文件名(默認(rèn)擴(kuò)展名為.epf);
(3) 用文本編輯器打開導(dǎo)出的文件(*.epf),查找".abc"(前面在.后添加的abc就這作用),
定位到/instance/org.eclipse.jdt.ui/content_assist_autoactivation_triggers_java=.abc
處,在abc后面添加你想要的觸發(fā)鍵,如:
...content_assist_autoactivation_triggers_java=.abcdefghijklmnopqrstuvwxyz
保存.
(4) 再使用"File"菜單中的"Import..."導(dǎo)入即可使用增強(qiáng)的Content Assist.
================================================================================
22. 為MyEclipse添加XML文檔所使用的DTD或XML Schema,
從而使用Content Assistant可進(jìn)行代碼提示:
================================================================================
(1) DTD
1) 定位到:
WIndow->Preferences->MyEclipse->XML->XML Catalog
2) 在右邊的界面中,選擇"User Specified Entries",點(diǎn)擊右邊的"Add...";
3) 在彈出的對(duì)話框中點(diǎn)擊"File System...",為Location輸入框添加DTD文件所在路徑;
4) 使用別的文本編輯器打開此DTD文件,找到相應(yīng)的<!DOCTYPE ...>文檔類型聲明,
比如說Hibernate的配置文件:hibernate.cfg.xml所需要的DTD文件為:
hibernate-configuration-3.0.dtd
打開hibernate-configuration-3.0.dtd后,找到如下內(nèi)容:
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate./hibernate-configuration-3.0.dtd">
4) "Key Type:"右邊的下拉框中(有三個(gè)類型:Public ID,System ID,URI),
根據(jù)hibernate-configuration-3.0.dtd中的<!DOCTYPE...>中的PUBLIC,
選擇Public ID(或者直接選擇"URI"也可);
5) "Key:"右邊的文本框中,將hibernate-configuration-3.0.dtd中的<!DOCTYPE...>
中的PUBLIC后的雙引號(hào)內(nèi)的內(nèi)容COPY,然后粘貼到"Key:"右邊的文本框中,
注意,COPY的內(nèi)容不帶雙引號(hào)"";
(如果上面第(4)步中選擇的是URI,則需要填入的是dtd文件中的http://...部分)
6) 點(diǎn)擊"OK",即可看到"User Specified Entries"已有了所增加的DTD(的KEY);
同樣,hibernate-mapping-3.0.dtd這個(gè)DTD的加入,也可以如法炮制;
7) 重啟MyEclipse即可,注意如果提示不出來,
并在狀態(tài)欄的左下出現(xiàn)"Content Assist not available at the current location",
請(qǐng)?jiān)诠鈽?biāo)位置鍵入一個(gè)空格再使用Alt+/試試;
(2) XSD(XML Schema)
1) 定位到:
WIndow->Preferences->MyEclipse->XML->XML Catalog
2) 在右邊的界面中,選擇"User Specified Entries",點(diǎn)擊右邊的"Add...";
3) 在彈出的對(duì)話框中點(diǎn)擊"File System...",為Location輸入框添加XSD文件所在路徑;
4) .xsd文件添加后,在下面的Key:右邊的文本框會(huì)自動(dòng)添加一個(gè)URI,如Spring的:
http://www./schema/beans
如果沒有自動(dòng)添加,使用別的文本編輯器打開此.xsd文件,
找到相應(yīng)的<xsd:schema xmlns...>名稱空間聲明,比如說spring-beans-2.5.xsd
<xsd:schema xmlns="http://www./schema/beans"
xmlns:xsd="http://www./2001/XMLSchema"
targetNamespace="http://www./schema/beans">
4) "Key Type:"右邊的下拉框中有Namespace Name與Schema Location兩個(gè)選項(xiàng),
如果是DTD,這里有有三個(gè)類型:Public ID,System ID,URI;
將Key Type置為Schema Location
5) 在Key:右邊的文本框中的URI后面加上/,再加上此xsd的名字,
如spring-beans-2.5.xsd的key為:
http://www./schema/beans/spring-beans-2.5.xsd
6) 點(diǎn)擊"OK",即可看到"User Specified Entries"已有了所增加的xsd(的KEY);
選中此xsd條目,下面的Details為:
Location: D:\Programs\Java\spring-framework-2.5.6.SEC01\dist\resources\spring-beans-2.5.xsd
URI: file:///D:/Programs/Java/spring-framework-2.5.6.SEC01/dist/resources/spring-beans-2.5.xsd
Key Type: Schema Location
Key: http://www./schema/beans/spring-beans-2.5.xsd
7) 重啟MyEclipse即可,注意如果提示不出來,
并在狀態(tài)欄的左下出現(xiàn)"Content Assist not available at the current location",
請(qǐng)?jiān)诠鈽?biāo)位置鍵入一個(gè)空格再使用Alt+/試試;
================================================================================
23. 在Eclipse中可以通過window->Reset Perspective恢復(fù)透視圖默認(rèn)設(shè)置。
================================================================================
24. @Override報(bào)錯(cuò)的原因:
================================================================================
在項(xiàng)目的Properties-->Java Compiler的右邊視圖中,
選中"Enable project specific settings",
"Compiler compliance level:"選擇為1.6,
因?yàn)?.5中,實(shí)現(xiàn)某一接口的時(shí)候,方法的實(shí)現(xiàn)不能使用@Override標(biāo)記;
1.6后無論是方法的覆寫還是方法的實(shí)現(xiàn),均可使用@Override標(biāo)記.
================================================================================
25. MyEclipse8.0GA中安裝插件:
================================================================================
(1) 解壓插件,一般會(huì)有下面的目錄結(jié)構(gòu):
eclipse |
|features
|plugins
早期的MyEclipse版本中,只需要將插件解壓后的eclipse文件夾COPY到
MyEclipse目錄下覆蓋(補(bǔ)充)到eclipse文件夾中即可,
但8.0GA中不一樣了,需要將插件解壓后的eclipse目錄中的兩個(gè)文件夾,
COPY到MyEclipse安裝路徑下的D:\Programs\Genuitec\Common目錄下,
(2) 修改bundles.info,此文件位于MyEclipse的安裝目錄下的:
D:\Programs\Genuitec\MyEclipse8.0GA\configuration
\org.eclipse.equinox.simpleconfigurator
目錄下;
在bundles.info文件的最后,增加如下格式的信息:
包名,版本號(hào),file:/文件絕對(duì)路經(jīng),4,false
如(一個(gè)國際化資源文件編輯器插件):
jp.gr.java_conf.ussiy.app.propedit,5.3.3,file:/D:/Programs/Genuitec/Common/plugins/jp.gr.java_conf.ussiy.app.propedit_5.3.3.jar,4,false
(3) 重新啟動(dòng)MyEclipse,OK;
================================================================================
26. 防止代碼格式化時(shí)出現(xiàn)換行
================================================================================
辛苦寫完的代碼,被MyEclipse格式化后,
想放在一行上的東西被自動(dòng)轉(zhuǎn)成了多行,
如果想避免這個(gè)情況,可:
1. Java代碼
Window->Preferences->Java->Code Style->Formatter->Edit
在彈出的界面中:
Line Wrapping->Maximum line width
這個(gè)值是設(shè)置一行的寬度,默認(rèn)值為80,可以在這里把這個(gè)值根據(jù)自己需要改大;
2. HTML/JSP代碼
Window->Preferences->MyEclipse->Files and Editors->Html->Html Source->Line width
默認(rèn)值為72,把這個(gè)值根據(jù)自己需要改大;
3. XML代碼
Window->Preferences->MyEclipse->Files and Editors->xml->xml Source->->Line width
默認(rèn)值為72,把這個(gè)值根據(jù)自己需要改大;
================================================================================
27. MyEclipse8.0啟動(dòng)時(shí)顯示啟動(dòng)界面(splash.bmp)
================================================================================
在myeclipse.ini的最后一行加上:
-showsplash
-Dosgi.splashLocation=D:/Programs/Genuitec/Common/plugins/com.genuitec.myeclipse.product8_8.0.0.me200911192201/splash.bmp
其中-Dosgi.splashLocation=后面的是界面圖片的路徑;
================================================================================
28. 加入自己的環(huán)境變量:
================================================================================
如在myeclipse.ini的最后一行加上:
-DNLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
-Duser.language=zh
================================================================================
29. Tomcat內(nèi)存設(shè)置方法
================================================================================
在windows中大家都知道,JAVA程序啟動(dòng)時(shí)都會(huì)JVM都會(huì)分配一個(gè)初始內(nèi)存和最大內(nèi)存給這個(gè)應(yīng)用程序。
這個(gè)初始內(nèi)存和最大內(nèi)存在一定程度都會(huì)影響程序的性能。
比如說在應(yīng)用程序用到最大內(nèi)存的時(shí)候,JVM是要先去做垃圾回收的動(dòng)作,釋放被占用的一些內(nèi)存。
所以想調(diào)整Tomcat的啟動(dòng)時(shí)初始內(nèi)存和最大內(nèi)存就需要向JVM聲明,
一般的JAVA程序在運(yùn)行都可以通過中-Xms -Xmx來調(diào)整應(yīng)用程序(Heap堆)的初始內(nèi)存和最大內(nèi)存:
如:
java -Xms64m -Xmx128m a.jar
Tomcat的啟動(dòng)程序是包裝過的,不能直接使用java -X..... tomcat.*來改變內(nèi)存的設(shè)置。
在Tomcat在改變這個(gè)設(shè)置有兩種方法:
1. 適合用%tomcat_home%\bin中的startup.bat腳本啟動(dòng),
需要在環(huán)境變量中加上CATALINA_OPTS這個(gè)屬性,如:
SET CATALINA_OPTS=-Xms64m -Xmx512m;
ms是最小的,mx是最大,64m,512m分別是指內(nèi)存的初始和最大容量.
因?yàn)橛胹tartup.bat啟動(dòng)tomcat服務(wù)器,會(huì)調(diào)用catalina.bat文件,
在Catalian.bat文件的166行"rem Execute Java with the applicable properties"
下面有加載系統(tǒng)設(shè)置的相關(guān)屬性。
其中就有%CATALINA_OPTS%這一項(xiàng)。這樣tomcat在啟動(dòng)時(shí)就會(huì)將內(nèi)存設(shè)置為指定的值。
2. 適合將tomcat作為系統(tǒng)服務(wù)啟動(dòng),這時(shí)候上面設(shè)置CATALINA_OPTS屬性的方法就不適用了,
因?yàn)樽鳛橄到y(tǒng)服務(wù)的話,系統(tǒng)啟動(dòng)時(shí)調(diào)用的是 %tomcat_home%\bin\tomcat5w.exe,
他讀取注冊(cè)表中的值,而不是catalina.bat的設(shè)置,因此需要修改注冊(cè)表:
解決辦法,修改注冊(cè)表:
HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Tomcat Service Manager\Tomcat5\Parameters\JavaOptions
原值為
-Dcatalina.home="C:\ApacheGroup\Tomcat 5.0"
-Djava.endorsed.dirs="C:\ApacheGroup\Tomcat 5.0\common\endorsed"
-Xrs
加入
-Xms300m -Xmx350m
重起tomcat服務(wù),設(shè)置生效
最后,測(cè)試tomcat使用內(nèi)存的大小,在jsp頁面:
<%
Runtime lRuntime = Runtime.getRuntime();
out.println("*** BEGIN MEMORY STATISTICS ***<br/>");
out.println("Free Memory: "+lRuntime.freeMemory()+"<br/>");
out.println("Max Memory: "+lRuntime.maxMemory()+"<br/>");
out.println("Total Memory: "+lRuntime.totalMemory()+"<br/>");
out.println("Available Processors : "+lRuntime.availableProcessors()+"<br/>");
out.println("*** END MEMORY STATISTICS ***");
%>
================================================================================
30. MyEclipse中啟動(dòng)Oracle連接的時(shí)候報(bào)Error:
Error while performing database login with the Oracle0.2.0.1.0 driver:
ORA-00604: error occurred at recursive SQL level 1
ORA-12705: Cannot access NLS data files or invalid environment specified
大致意思是MyEclipse的環(huán)境變量或NLS配置文件與服務(wù)器端的有出入或不匹配;
查看Oracle數(shù)據(jù)庫的相關(guān)信息為:
================================================================================
解決:
Help->Aboub MyEclipse Enterprise Workbench->Installation Details->
->Configuration
找找以下相關(guān)參數(shù)(下面的參數(shù)就是啟動(dòng)Oracle連接報(bào)錯(cuò)的原因):
-Duser.language=en
osgi.nl=en_CN
user.country=CN
user.language=en
打開myeclipse.ini查看,看到多了一項(xiàng)參數(shù):
-Duser.language=en
MyEclipse在啟動(dòng)時(shí)候,語言編碼是在[MyEclipse路徑]\eclipse\eclipse.ini文件中加載的。
而國家地區(qū)編碼是從系統(tǒng)的區(qū)域設(shè)置中得到的。
如果MyEclipse默認(rèn)啟動(dòng)參數(shù)為"-Duser.language=en",
而操作系統(tǒng)設(shè)為"中文(中國)"也就是CN,那么MyEclipse加載后的信息就是"en_CN",
這樣就會(huì)看到osgi.nl=en_CN,這就會(huì)出現(xiàn)上述問題,
所以只要將語言與區(qū)域設(shè)置一致,就可以解決上述問題,
可以就系統(tǒng)的區(qū)域設(shè)置定為"中文(中國)"CN,修改eclipse.ini文件,
將"-Duser.language=en"修改為"-Duser.language=zh",
這樣在MyEclipse加載后的Configuration Details信息就統(tǒng)一為zh_CN,即"osgi.nl=zh_CN".
也可以直接在myeclipse.ini中設(shè)置:
-Duser.language=en
-Dosgi.nl=en_US
這樣在MyEclipse加載后的Configuration Details信息就統(tǒng)一為en_US,即"osgi.nl=en_US".
================================================================================
31. 改變MyEclipse中錯(cuò)誤提示的波浪線為其他樣式:
================================================================================
window->Preferences->Ceneral->Editors->Text Editors->Annotations:
在右邊的"Annotation Types"下找到紅叉圖標(biāo)的"Errors",選中,
在界面上的右邊,可以看到以下幾個(gè)Show in的復(fù)選項(xiàng):
Vertical ruler 左邊框堅(jiān)狀條
Overview ruler 右邊框堅(jiān)狀條
Text as 文本的顯示方式
勾選上"Text as",在其右邊的下拉框中有以下幾種選項(xiàng):
Text as :
Box 實(shí)線框
Dashed Box 虛線框
Highlighted 高亮
Native Problem Underline ??
Squiggles Line 波浪線
Underlined 下劃線
Vertical Bar 豎線
================================================================================
32. 改變默認(rèn)的創(chuàng)建JSP時(shí)的pageEncoding編碼:
================================================================================
定位到:
Window->Preferences->MyEclipse->Files and Editors->JSP
在其右邊的界面中,Encoding右邊的下拉組合框中選擇需要的字符集,如:
"ISO 10646/Unicode(UTF-8)"
在其下會(huì)顯示:
IANA: UTF-8
如果選擇Chinese, National Standard
則其下會(huì)顯示:
IANA: GB18030
================================================================================
33. MyEclipse中使用正則替換批量生成刪表SQL:
================================================================================
方式一:
應(yīng)用于刪除數(shù)據(jù)庫中的垃圾表:
(1) 先在sqlplus下使用如下命令查找到表名,如:
SELECT table_name from user_tables;
把表名復(fù)制到一個(gè).sql文件中,
(2) MyEclipse打開此.sql文件,按CTRL+F調(diào)出查找替換界面,
勾選上Options中的Regular expressions,
在Find右邊的文本框填寫上: (^\W)
這表示查找每行的第一個(gè)字母,并將其緩存于GROUP1中,
在Replace With右邊的文本框中填寫上: DROP TABLE $1
表示將匹配上的字符替換為DROP TABLE 加上它本身,
其中$1表示從緩存的GROUP1中取內(nèi)容;
(3) 同理在語句最后加上:
在Find右邊的文本框填寫上: (\W$)
這表示查找每行的最后一個(gè)字母,并將其緩存于GROUP1中,
在Replace With右邊的文本框中填寫上: $1 CASCADE CONSTRAINTS;
表示將匹配上的字符替換為它本身加上 CASCADE CONSTRAINTS;,
其中$1表示從緩存的GROUP1中取內(nèi)容;
(4) 所有的DROP TABLE XXxxx CASCADE CONSTRAINTS;語句生成;
方式二:
(1) 先動(dòng)態(tài)生成sql腳本(vi gen.sql,然后內(nèi)容如下):
set head off
set feed off
set echo off
spool deltab.sql
SELECT 'DROP TABLE '||table_name||' CASCADE CONSTRAINTS;' FROM user_tables;
spool off
set head on
set feed on
(2) 執(zhí)行g(shù)en.sql生成deltab.sql;
(3) 執(zhí)行deltab.sql腳本;
================================================================================
34. 新建工作空間WorkSpace后,如何使用以前的工作空間設(shè)置?
================================================================================
原工作空間目錄下有相關(guān)的配置信息:
\.metadata\.plugins\org.eclipse.ui.workbench
\.metadata\.plugins\org.eclipse.ui.workbench.texteditor
將上面兩個(gè)文件夾COPY到新的工作空間覆蓋,然后再啟動(dòng)MyEclispe.
如果打開新的工作空間后,項(xiàng)目處還有舊工作空間的項(xiàng)目列表,
則刪除即可,但注意不要將其從磁盤上徹底刪除,也就是只從工作空間刪除.
================================================================================
35. MyEclipse中編寫Java源文件時(shí)一個(gè)奇怪的問題[點(diǎn)Vertical Ruler上的紅叉后,代碼被隱藏]
================================================================================
現(xiàn)象描述:
如果源文件有錯(cuò),這時(shí)在錯(cuò)誤行的行首左邊(行號(hào))的左邊的Vertical Ruler(標(biāo)斷點(diǎn)的那個(gè)隔條)上
會(huì)有一個(gè)紅叉圖標(biāo),點(diǎn)擊這個(gè)紅叉圖標(biāo),一般會(huì)彈出一個(gè)提示你修正的提示框,
就跟在有錯(cuò)的地方使用快捷鍵CTRL+1調(diào)出Quick Fix框一樣,
但現(xiàn)在用鼠標(biāo)點(diǎn)這個(gè)紅叉,快速修正框不彈出了,
替代的卻是整個(gè)Editor界面中的代碼從錯(cuò)誤地方開始,被移動(dòng)到Editor界面中的最頂,
在有錯(cuò)的代碼的上邊的其他代碼都會(huì)看不到了(注意不是代碼被折疊Folding了,而是看不見了,
但是行號(hào)的序號(hào)卻是此行原來的樣子,只不過現(xiàn)在這行是頂行),關(guān)掉這個(gè)源文件,重新打開,
所有代碼又都顯示了,
現(xiàn)在的問題是怎樣讓鼠標(biāo)點(diǎn)紅叉后出Quick Fix框,而不是將錯(cuò)誤代碼置頂并隱藏其之前的代碼?
解決:
這是由于Eclipse中的"Show Source of Selected Element Only"功能引起的,
定位到:
Window->Customize Perspective->Tool Bar Visibility->Editor Presentation
展開Editor Presentation,找到Show Source of Selected Element Only,將其勾選,
這樣在工具欄的快捷處就會(huì)出現(xiàn)這個(gè)功能的圖標(biāo),如果這個(gè)圖標(biāo)是凹下去的,點(diǎn)擊一下,
使其不被使用即可;
也可在工具欄快捷的空白處鼠標(biāo)右鍵->Customize Perspective->Tool Bar Visibility...
這樣找到Show Source of Selected Element Only選項(xiàng);
================================================================================
36. 解決MyEclipse中連接數(shù)據(jù)庫連接后,展開table或是view列表是不能顯示的問題:
================================================================================
現(xiàn)象:
MyEclipse8.0GA中,DB Browers能與數(shù)據(jù)庫建立連接,但是在試圖展開table或是view列表時(shí)是空的,
看不到已經(jīng)建立的表。而且,右鍵點(diǎn)擊table的create table進(jìn)行建表,
在提交時(shí)報(bào)錯(cuò)如下:
Table could not be created
Reason:ORA-06552:PL/SQL: Compilation unit alalysis terminated
ORA-06553: PLS-553: 無法識(shí)別字符集名稱
ORA-06553: PLS-553: character set name is not recognized;
開始懷疑是MyEclipse的問題,后來想起來有對(duì)數(shù)據(jù)庫做過字符集的修改,
手動(dòng)的使用update props$,修改了字符集,其實(shí)這并不會(huì)真正徹底的改變數(shù)據(jù)庫的所有字符集,
下面來確認(rèn)字符集是不是真的被徹底修改:
SQL> select value$ from props$ where name='NLS_CHARACTERSET';
VALUE$
----------------------------
ZHS16GBK
SQL> SELECT DISTINCT (NLS_CHARSET_NAME(CHARSETID)) CHARACTERSET,
DECODE( TYPE#,
1, DECODE(CHARSETFORM, 1, 'VARCHAR2', 2, 'NVARCHAR2','UNKOWN'),
9, DECODE(CHARSETFORM, 1, 'VARCHAR', 2, 'NCHAR VARYING','UNKOWN'),
96, DECODE(CHARSETFORM 5 , 1, 'CHAR', 2, 'NCHAR', 'UNKOWN'),
112, DECODE(CHARSETFORM, 1, 'CLOB', 2, 'NCLOB', 'UNKOWN')
) TYPES_USED_IN
FROM SYS.COL$
WHERE CHARSETFORM IN (1, 2)
AND TYPE# IN (1, 9, 96, 112);
CHARACTERSET TYPES_USED_IN
---------------------------------------- -------------
WE8ISO8859P1 VARCHAR2
WE8ISO8859P1 CHAR
AL16UTF16 NCLOB
AL16UTF16 NVARCHAR2
ZHS16GBK VARCHAR2
WE8ISO8859P1 CLOB
AL16UTF16 NCHAR
已選擇7行。
上面SELECT語句的意思是:
NLS_CHARSET_NAME(CHARSETID) --> 使用NLS_CHARSET_NAME()函數(shù),取到其ID參數(shù)的字符集名稱;
DECODE(....) TYPES_USED_IN --> 括號(hào)中的意思是:
如果TYPE#(TYPE#為第一個(gè)DECODE的第一個(gè)參數(shù))的值是
第二個(gè)參數(shù)(1),則取其后的參數(shù)(1后面的)為函數(shù)的返回值,
否則繼承判斷TYPE#是否其與第四個(gè)參數(shù)相等,如果相等,
函數(shù)返回第五個(gè)參數(shù)的值.....,TYPE#如果均不等于
1,9,96,112,則最外的DECODE()函數(shù)返回NULL;
確實(shí)在數(shù)據(jù)庫的列屬性中仍然存在著多個(gè)字符集的設(shè)定,下面解決這個(gè)問題。
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP MOUNT;
SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION;
System altered.
SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
System altered.
SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0;
System altered.
SQL> ALTER DATABASE OPEN;
Database altered.
SQL> COL VALUE NEW_VALUE CHARSET
SQL> SELECT VALUE FROM NLS_DATABASE_PARAMETERS WHERE PARAMETER='NLS_CHARACTERSET';
VALUE
-------------------------------------------
ZHS16GBK
SQL> COL VALUE NEW_VALUE NCHARSET
SQL> SELECT VALUE FROM NLS_DATABASE_PARAMETERS WHERE PARAMETER='NLS_NCHAR_CHARACTERSET';
VALUE
-------------------------------------------
ZHS16GBK
這里的國家語言字符集是有問題的,往下看操作就知道了:
-- INTERNAL_USE是沒有寫在文檔中的參數(shù),用以強(qiáng)制完成字符集一致化
ALTER DATABASE CHARACTER SET INTERNAL_USE &CHARSET;
ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE &NCHARSET;
SQL> ALTER DATABASE CHARACTER SET INTERNAL_USE &CHARSET;
old 1: ALTER DATABASE CHARACTER SET INTERNAL_USE &CHARSET
new 1: ALTER DATABASE CHARACTER SET INTERNAL_USE ZHS16GBK
Database altered.
SQL> ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE &NCHARSET;
old 1: ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE &NCHARSET
new 1: ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE ZHS16GBK
ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE ZHS16GBK
*
ERROR at line 1:
ORA-12714: invalid national character set specified
-- 運(yùn)行到此處出問題了,看來國家字符集不能是ZHS16GBK的了,
-- 那為什么取的時(shí)候會(huì)取到呢?是因?yàn)樵缦鹊臅r(shí)候無知地使用了這個(gè)語句:
SQL> UPDATE props$ SET value$='ZHS16GBK'
WHERE name='NLS_CHARACTERSET' or name='NLS_NCHAR_CHARACTERSET';
-- 其值原來是 AL16UTF16,UPDATE后改成了ZHS16GBK,現(xiàn)在把其改回去先;
SQL> UPDATE props$ SET value$='AL16UTF16'
WHERE name='NLS_NCHAR_CHARACTERSET'; 2
1 row updated.
SQL> commit;
Commit complete.
-- 再次運(yùn)行:
SQL> ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE &NCHARSET;
old 1: ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE &NCHARSET
new 1: ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE ZHS16GBK
ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE ZHS16GBK
*
ERROR at line 1:
ORA-12714: invalid national character set specified
-- 還是不行,看看錯(cuò)誤原因:
SQL> !oerr ORA 12714
12714, 00000, "invalid national character set specified"
// *Cause: Only UTF8 and AL16UTF16 are allowed to be used as the national
// character set
// *Action: Ensure that the specified national character set is valid
-- 由此可知,Oracle 10g的NATIONAL CHARACTER SET只有2個(gè)選擇:AL16UTF16與UTF8
-- 下面直接用國家字符集名字,而不使用&NCHARSET來取:
SQL> ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE AL16UTF16;
Database altered.
-- 成功修改
-- 關(guān)閉數(shù)據(jù)庫并重啟:
SQL> SHUTDOWN IMMEDIATE
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> STARTUP
ORACLE instance started.
Total System Global Area 612368384 bytes
Fixed Size 2022696 bytes
Variable Size 251658968 bytes
Database Buffers 352321536 bytes
Redo Buffers 6365184 bytes
-- 按照上面的步驟,一步一步來,一步不要少,完成以后,重新檢索col$表。
CHARACTERSET TYPES_USED_IN
---------------------------------------- -------------
ZHS16GBK CHAR
AL16UTF16 NCLOB
ZHS16GBK VARCHAR2
AL16UTF16 NVARCHAR2
ZHS16GBK CLOB
AL16UTF16 NCHAR
已選擇6行。
與之前的做一下對(duì)比:
CHARACTERSET TYPES_USED_IN
---------------------------------------- -------------
WE8ISO8859P1 VARCHAR2
WE8ISO8859P1 CHAR
AL16UTF16 NCLOB
AL16UTF16 NVARCHAR2
ZHS16GBK VARCHAR2
WE8ISO8859P1 CLOB
AL16UTF16 NCHAR
已選擇7行。
可看出:
對(duì)于CHAR,VARCHAR2,CLOB使用了ZHS16GBK;
對(duì)于NCHAR,NVARCHAR2,NCLOB使用了AL16UTF16;
再次使用MyEclipse打開看看,一切OK了.
相關(guān)內(nèi)容:
================================================================================
環(huán)境變量可設(shè)置為:
NLS_LANG='SIMPLIFIED CHINESE_CHINA.ZHS16GBK'
NLS_LANG='AMERICAN_AMERICA.ZHS16GBK'
NLS_LANG='AMERICAN_AMERICA.US7ASCII'
改變SESSION會(huì)話的(客戶端界面顯示)語言:
錯(cuò)誤寫法:
ALTER SESSION SET NLS_LANGUAGE='AMERICAN_AMERICA.ZHS16GBK';
SET NLS_LANG='AMERICAN_AMERICA.ZHS16GBK'
正確寫法:
ALTER SESSION SET NLS_LANGUAGE=AMERICAN;
ALTER SESSION SET NLS_LANGUAGE='SIMPLIFIED CHINESE';
有空格使用''括起來.
有關(guān)數(shù)據(jù)庫字符集:
1. 查看數(shù)據(jù)庫字符集
數(shù)據(jù)庫服務(wù)器字符集:
SELECT * FROM NLS_DATABASE_PARAMETERS;
其來源于props$,是表示數(shù)據(jù)庫的字符集;
客戶端字符集環(huán)境:
SELECT * FROM NLS_INSTANCE_PARAMETERS;
表示客戶端的字符集的設(shè)置,可能是參數(shù)文件,環(huán)境變量或者是注冊(cè)表,其來源于v$parameter;
會(huì)話字符集環(huán)境:
SELECT * FROM NLS_SESSION_PARAMETERS;
其來源于v$nls_parameters,表示會(huì)話自己的設(shè)置,
可能是會(huì)話的環(huán)境變量或者是alter session完成,
如果會(huì)話沒有特殊的設(shè)置,將與nls_instance_parameters一致。
客戶端的字符集要求與服務(wù)器一致,才能正確顯示數(shù)據(jù)庫的非Ascii字符。
如果多個(gè)設(shè)置存在的時(shí)候,ALTER SESSION>環(huán)境變量>注冊(cè)表>參數(shù)文件
字符集要求一致,但是語言設(shè)置卻可以不同,語言設(shè)置建議用英文。
如字符集是ZHS16GBK,則NLS_LANG可以是AMERICAN_AMERICA.ZHS16GBK。
2. 修改字符集
8i以上版本可以通過ALTER DATABASE來修改字符集,但也只限于子集到超集,
不建議修改props$表,將可能導(dǎo)致嚴(yán)重錯(cuò)誤。
startup nomount;
alter database mount exclusive;
alter system enable restricted session;
alter system set job_queue_process=0;
alter database open;
alter database character set zhs16gbk;
3. 怎么查看數(shù)據(jù)庫版本
select * from v$version
包含版本信息,核心版本信息,位數(shù)信息(32位或64位)等
至于位數(shù)信息,在Linux/unix平臺(tái)上,可以通過file查看,如:
file $ORACLE_HOME/bin/oracle
================================================================================
絕對(duì)不要用update系統(tǒng)表(props$)的方式來修改數(shù)據(jù)庫字符集.
從Oracle9i開始,Oracle在啟動(dòng)時(shí)跳過了這個(gè)檢查,即使修改了錯(cuò)誤的字符集,
也仍然可以啟動(dòng),數(shù)據(jù)庫啟動(dòng)時(shí)會(huì)將控制文件中的字符集更改為缺省的US7ASCII.
具體可以看看以下的測(cè)試:
SQL> select value$ from props$ where name='NLS_CHARACTERSET';
VALUE$
----------------------------------------------------------
ZHS16GBK
SQL> update props$ set value$='EYGLE' where name='NLS_CHARACTERSET';
1 row updated.
SQL> commit;
Commit complete.
SQL> select value$ from props$ where name='NLS_CHARACTERSET';
VALUE$
-----------------------------------------
EYGLE
-- 注意,這個(gè)EYGLE是不存在的字符集;
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 126948772 bytes
Fixed Size 452004 bytes
Variable Size 92274688 bytes
Database Buffers 33554432 bytes
Redo Buffers 667648 bytes
Database mounted.
Database opened.
SQL> select value$ from props$ where name='NLS_CHARACTERSET';
VALUE$
----------------------------------------------
EYGLE
此時(shí)警告日志中會(huì)記錄如下信息:
Thu Jun 8 16:28:05 2006
SMON: enabling cache recovery
SMON: enabling tx recovery
Thu Jun 8 16:28:05 2006
Updating character set in controlfile to US7ASCII
replication_dependency_tracking turned off (no async multimaster replication found)
Completed: ALTER DATABASE OPEN
雖然啟動(dòng)正常,不會(huì)報(bào)錯(cuò),但在一起實(shí)際運(yùn)用中是會(huì)有問題的,特別是在有中文使用的情況下.
要徹底修改,參見上面.
================================================================================
37. 導(dǎo)入Code Style的Formatter配置與Organize Imports配置文件
================================================================================
(1) Formatter(代碼風(fēng)格格式):
定位到 Window->Preferences->Java->Code Style->Formatter
在右邊, 點(diǎn)擊"Import..."按鈕,找到fromatterName.xml文件打開導(dǎo)入;
(2) Organize Imports(包的導(dǎo)入排序):
定位到 Window->Preferences->Java->Code Style->Organize Imports
在右邊, 點(diǎn)擊"Import..."按鈕,找到xxx.importorder文件打開導(dǎo)入;
================================================================================
38. Copy Qualified Name 拷貝類全名
================================================================================
選中Java源文件中的類名,然后鼠標(biāo)右鍵->Copy Qualified Name,
得到的結(jié)構(gòu)格式是包結(jié)構(gòu)格式,如下:
com.taotling.riskctrl.Access
如果是在Package Explorer中選中Java源文件,然后鼠標(biāo)右鍵->Copy Qualified Name,
得到的格式是路徑格式,如下:
/foo_20100713/src/com/taotling/riskctrl/Access.java
如果選中一個(gè)方法,鼠標(biāo)右鍵->Copy Qualified Name,
得到的格式如下:
com.taotling.riskctrl.Access.check(CheckValue)
================================================================================
39. Debug的時(shí)候跳回上一個(gè)Frame重新進(jìn)入被選中的Stack Frame
================================================================================
Eclipse 中 drop to frame 的調(diào)試技巧
解釋如下:
Select the [ Drop to Frame command ] to re-enter the selected stack frame
in the Debug View.
Note this command is only available if the current VM supports drop to frame
and the selected stackframe is not the top frame or a frame in a native method.
就是說,這個(gè)功能可以重新跳到當(dāng)前方法的開始處重新執(zhí)行,
并且所有上下文變量的值也回到那個(gè)時(shí)候。
不一定是當(dāng)前方法,可以點(diǎn)擊當(dāng)前調(diào)用棧中的任何一個(gè)frame跳到那里(除了最開始的那個(gè)frame)。
主要用途是所有變量狀態(tài)快速恢復(fù)到方法開始時(shí)候的樣子重新執(zhí)行一遍,
即可以一遍又一遍地在那個(gè)你關(guān)注的上下文中進(jìn)行多次調(diào)試(結(jié)合改變變量值等其它功能),
而不用重來一遍調(diào)試到哪里了。
當(dāng)然,原來執(zhí)行過程中產(chǎn)生的副作用是不可逆的(比如你往數(shù)據(jù)庫中插入了一條記錄)。
這里也說了如何使用這個(gè)功能:
http://www./forums/thread.jspa?threadID=15271&tstart=0
引用如下:
---------------------------------------------------------------------------
You can't know where you are without knowing where you've been.
It's true in life, and it is especially true in debugging code.
Placing a breakpoint in a method to test code is usually only useful
if you know the context of how the method was executed.
The main 'Debug' view of the 'Debug' perspective shows a stack trace of the methods
that have led to the current point.
Each element in this stack trace is referred to in Eclipse as a 'frame'.
A frame is nothing more than the variable state of a method right
when the method it called was executed.
You can preview the state of a frame simply by clicking on it in the 'Debug' view.
Notice that once selected you can see the values in the variable view at the point
that the child method 'methodB' was called.
It is possible to preview the state of any frame simply
by selecting it in the 'Debug' view.
What if, however, you've decided that you missed an important state
in the execution process;
perhaps the breakpoint was in the wrong place,
or maybe you accidentally stepped over some code you wanted to inspect earlier
in the process.
Eclipse has a feature called 'Drop to Frame'.
'Drop to Frame' essentially lets you 'rewind' the execution
to the beginning of any method in the stack.
This is especially useful when performing variable modification
or code hotswapping - both features I plan to discuss in detail future articles
- traditional debugging, however,
can still benefit greatly from the drop to frame functionality.
I personally like to think of drop to frame as my emergency rewind button
when I'm dealing with traditional debugging.
To drop to a certain frame, select the frame in the 'Debug' view as before,
and right click and select the 'Drop to Frame' action.
Once done, you will back up to the beginning of the execution of the selected method.
Notice that now 'methodB' is no longer on the stack at all,
and you are now back in 'methodA'.
I highly recommend experimenting with these features;
it is something I can't do justice to;
it simply has to be experienced.
If you find yourself heading for the stop button
so you can start your debug session over,
take a breath and consider using 'drop to frame'
- it can save a huge amount of time.
40. Java Comppiler 的 compiler compliance level的含義說明
================================================================================
查看Java Comppiler 界面中的"Configure Workspace Settings";
注意,如果勾選了"Enable project specific settings",
并且勾選了下面"JDK Compliance"中的
"Use compliance from execution environment on the Java Build Path"
使用的"Compiler compliance level"將會(huì)是:
compiler compliance level的含義說明:
設(shè)置編譯級(jí)別暨 Eclipse compiler compliance level為較低版本,
只是讓編譯器相信你的代碼是兼容較低版本的,
在編譯時(shí)生成的byteCode(class)兼容較低版本。
這樣設(shè)置與你寫代碼時(shí)引用的JDK是沒關(guān)系的,
也就是說你在寫代碼時(shí)仍可以引用較高版本的API(這樣就可能導(dǎo)致錯(cuò)誤).
設(shè)置compiler compliance level為較低版本,
這樣的好處是當(dāng)別人使用了較低版本的Jdk時(shí)也可以引用你寫的編譯后的代碼。
它可以保證編譯后的class文件的版本一致性。
但是,如果你的代碼里面(java source)里面調(diào)用了較高版本jdk的API.
那么即使設(shè)置了compiler compliance level為較低版本,
在較低版本的JDK上運(yùn)行你的代碼也會(huì)報(bào)錯(cuò)。
所以建議在寫代碼時(shí)引用的JDK,要跟你compiler compliance level設(shè)置的版本一致。
41. Find/Replace中設(shè)置回繞查詢
================================================================================
Ctrl+F彈出Find/Replace界面,勾選其"Options"中的"Wrap search"回繞查詢;
42. 快速查找哪些方法或類中引用了當(dāng)前選中的屬性或方法或類或其他對(duì)象:
================================================================================
(1) 選中需要進(jìn)行查詢的對(duì)象或?qū)傩?
(2) 鼠標(biāo)右鍵->References->
其下有幾個(gè)選項(xiàng):
Workspace (工作空間中)
Project (項(xiàng)目中)
Hierarchy (繼承結(jié)構(gòu)中)
Working Set... (其他Working Set中)
每個(gè)均表示一定的范圍,常用的是Project,如果使用Workspace需要小心查詢范圍擴(kuò)大了;
(3) 如果上面的查詢沒有結(jié)果,那就使用:
鼠標(biāo)右鍵->Declarations
這表示哪些地方聲明了此變量,同樣也有以下選項(xiàng):
Workspace
Project
Hierarchy
Working Set...
(4) 一般都使用快捷鍵 Ctrl + Shift + G 查詢Worksapace范圍內(nèi),
不過這種方式需要保證只有你用到的工程打開,否則查詢的結(jié)果有可能含有其他工程的引用;
如果Ctrl + Shift + G 查詢沒有結(jié)果,那就試試 Ctrl + G ,
有可能在別的地方再次進(jìn)行了聲明而使用,所以引用查詢不到;
================================================================================
================================================================================
================================================================================
================================================================================
================================================================================
================================================================================
================================================================================
================================================================================
================================================================================
================================================================================
================================================================================
================================================================================
================================================================================
================================================================================
================================================================================
關(guān)于軟件版本:
================================================================================
Alpha:
內(nèi)部測(cè)試版,一般不向外部發(fā)布,會(huì)有很多Bug.一般只有測(cè)試人員使用。
Beta:
測(cè)試版,這個(gè)階段的版本會(huì)一直加入新的功能。在Alpha版之后推出。
RC:(Release Candidate)
顧名思義!用在軟件上就是候選版本。系統(tǒng)平臺(tái)上就是發(fā)行候選版本。
RC版不會(huì)再加入新的功能了,主要著重于除錯(cuò)。
RTM:(Release to Manufacture)
給工廠大量壓片的版本,內(nèi)容跟正式版是一樣的,不過RTM版也有出限制、評(píng)估版的。
但是和正式版本的主要程序代碼都是一樣的。
OEM:
給計(jì)算機(jī)廠商隨著計(jì)算機(jī)販賣的,也就是隨機(jī)版。
只能隨機(jī)器出貨,不能零售。只能全新安裝,不能從舊有操作系統(tǒng)升級(jí)。
包裝不像零售版精美,通常只有一面CD和說明書(授權(quán)書)。
RVL:
號(hào)稱是正式版,其實(shí)RVL根本不是版本的名稱。它是中文版/英文版文檔破解出來的。
EVAL:
流通在網(wǎng)絡(luò)上的EVAL版,與"評(píng)估版"類似,功能上和零售版沒有區(qū)別。
RTL:Retail(零售版)
真正的正式版,正式上架零售版。
在Windows的安裝盤的i386文件夾里有一個(gè)eula.txt,最后有一行 EULAID,就是系統(tǒng)的版本。
比如簡(jiǎn)體中文正式版是EULAID:WX.4_PRO_RTL_CN,繁體中文正式版是WX.4_PRO_RTL_TW。
其中:如果是WX.開頭是正式版,WB.開頭是測(cè)試版。_PRE,代表家庭版;_PRO,代表專業(yè)版。
總結(jié)版本號(hào):
V(Version):
即版本,通常用數(shù)字表示版本號(hào)。(如:EVEREST Ultimate v4.20.1188 Beta)
Build:
用數(shù)字或日期標(biāo)示版本號(hào)的一種方式。(如:VeryCD eMule v0.48a Build 071112)
SP:
Service Pack,升級(jí)包。(如:Windows XP SP 2/Vista SP 1)
授權(quán)和功能劃分:
Trial:
試用版,通常都有時(shí)間限制,有些試用版軟件還在功能上做了一定的限制??勺?cè)或購買成為正式版.
Unregistered:
未注冊(cè)版,通常沒有時(shí)間限制,在功能上相對(duì)于正式版做了一定的限制??勺?cè)或購買成為正式版。
Demo:
演示版,僅僅集成了正式版中的幾個(gè)功能,不能升級(jí)成正式版。
Lite:精簡(jiǎn)版
Full version:完整版,屬于正式版。
語言劃分:
SC :Simplified Chinese簡(jiǎn)體中文版。
CN :簡(jiǎn)體中文版
GBK :簡(jiǎn)體中文漢字內(nèi)碼擴(kuò)展規(guī)范版。
TC :Traditional Chinese繁體中文版。
CHT :繁體中文版
BIG5:繁體中文大五碼版。
EN :英文版
Multilanguage:多語言版
UTF8:Unicode Transformation Format 8 bit,對(duì)現(xiàn)有的中文系統(tǒng)不是好的解決方案。
開發(fā)階段劃分:
α(Alpha)版:
內(nèi)測(cè)版,內(nèi)部交流或者專業(yè)測(cè)試人員測(cè)試用。Bug較多,普通用戶最好不要安裝。
β(Beta)版:
公測(cè)版,專業(yè)愛好者大規(guī)模測(cè)試用,存在一些缺陷,該版本也不適合一般用戶安裝。
γ(Gamma)版:
相當(dāng)成熟的測(cè)試版,與即將發(fā)行的正式版相差無幾。
RC版:
Release Candidate。
RC版:
Release Candidate 的縮寫,意思是發(fā)布倒計(jì)時(shí),候選版本,處于Gamma階段,
該版本已經(jīng)完成全部功能并清除大部分的BUG。
到了這個(gè)階段只會(huì)除BUG,不會(huì)對(duì)軟件做任何大的更改。
從Alpha到Beta再到Gamma是改進(jìn)的先后關(guān)系,但RC1、RC2往往是取舍關(guān)系。
Final:正式版。
其他版本
Enhance :增強(qiáng)版或者加強(qiáng)版 屬于正式版1
Free :自由版
Release :發(fā)行版 有時(shí)間限制
Upgrade :升級(jí)版
Retail :零售版
Cardware:屬共享軟件的一種,只要給作者回復(fù)一封電郵或明信片即可。
(有的作者并由此提供注冊(cè)碼等),目前這種形式已不多見。/ S
Plus :屬增強(qiáng)版,不過這種大部分是在程序界面及多媒體功能上增強(qiáng)。
Preview :預(yù)覽版
Corporation & Enterprise :企業(yè)版
Standard:標(biāo)準(zhǔn)版
Mini :迷你版也叫精簡(jiǎn)版只有最基本的功能
Premium :貴價(jià)版
Professional :專業(yè)版
Express :特別版
Deluxe :豪華版
Regged :已注冊(cè)版
Rip :是指從原版文件(一般是指光盤或光盤鏡像文件)直接將有用的內(nèi)容(核心內(nèi)容)分離出來,
剔除無用的文檔,例如PDF說明文件啊,視頻演示啊之類的東西,也可以算做是精簡(jiǎn)版.
但主要內(nèi)容功能是一點(diǎn)也不能缺少的!
另:DVDrip是指將視頻和音頻直接從DVD光盤里以文件方式分離出來。
RTM 版:這基本就是最終的版本,英文是 Release To Manufactur,意思是發(fā)布到生產(chǎn)商。
Original Equipment Manufacturer (OEM)
You may license products through an Original Equipment Manufacturer (OEM).
These products, such as Windows operating systems,
come installed when you purchase a new computer.
OEM軟件是給電腦生產(chǎn)廠的版本,無需多說?!?/div>
Full Packaged Product (FPP)/Retail
Physical, shrink-wrapped boxes of licensed product that can be purchased
in a local retail store or any local software retailer.
FPP就是零售版(盒裝軟件),這種產(chǎn)品的光盤的卷標(biāo)都帶有"FPP"字樣,
比如英文WXP Pro的FPP版本的光盤卷標(biāo)就是WXPFPP_EN,其中WX表示是Windows XP,
P是Professional(H是Home),FPP表明是零售版本,EN是表明是英語。
獲得途徑除了在商店購買之外,某些MSDN用戶也可以得到。
Volume Licensing for Organizations (VLO)
You may enjoy potentially significant savings
by acquiring multiple product licenses.
Depending on the size and type of your organization.
團(tuán)體批量許可證(大量采購授權(quán)合約),這是為團(tuán)體購買而制定的一種優(yōu)惠方式。
這種產(chǎn)品的光盤的卷標(biāo)都帶有"VOL"字樣,取"Volume"前3個(gè)字母,以表明是批量,
比如英文WXP Pro的VOL版本的光盤卷標(biāo)就是WXPVOL_EN,其中WX表示是Windows XP,
P是Professional(VOL沒有Home版本),VOL表明是團(tuán)體批量許可證版本,EN是表明是英語。
獲得途徑主要是集團(tuán)購買,某些MSDN用戶也可以得到。
在很多軟件下載的時(shí)候,你會(huì)發(fā)覺標(biāo)識(shí)為GA或者CRx等。比如MySQL和JBoss都采用這種標(biāo)識(shí)。
那什么是GA呢。GA是Generally Available的縮寫,
意思是開發(fā)團(tuán)隊(duì)認(rèn)為該版本是穩(wěn)定版(有的軟件可能會(huì)標(biāo)識(shí)為stable版或者production版,
其意思和GA相同),可以在較為關(guān)鍵的場(chǎng)合使用。
如果你是要用在生產(chǎn)中的軟件,或者你是一個(gè)新手,那么你最好選用GA版本。
這是測(cè)試最為充分,最為穩(wěn)定的版本。
RC就是Release Candidate(候選版本)的簡(jiǎn)稱
GA:General Availability,正式發(fā)布的版本,在國外都是用GA來說明release版本.
================================================================================
================================================================================
////////////////////////////////////////////////////////////////////////////////
================================================================================
配置文件(eclipse.ini或myeclipse.ini):
================================================================================
2009-06-16所有Eclipse,MyEclipse 都 Could not create the Java virtual machine.
頭天還能正常使用,配置如下:
(1) MyEclipse7.0/myeclipse.ini
================================================================================
-debug
options
-startup
Common\plugins\org.eclipse.equinox.launcher_1.0.101.R34x_v20080819.jar
--launcher.library
Common\plugins\org.eclipse.equinox.launcher.win32.win32.x86_1.0.101.R34x_v20080731
-clean
-configuration
configuration
-vm
D:\Program\Sun\Java\jdk1.6.0_13\bin\javaw.exe
-vmargs
-Xms696M
-Xmx696M
-XX:PermSize=128M
-XX:MaxPermSize=128M
-XX:+UseParallelGC
================================================================================
現(xiàn)在改為:
================================================================================
-debug
options
-startup
Common\plugins\org.eclipse.equinox.launcher_1.0.101.R34x_v20080819.jar
--launcher.library
Common\plugins\org.eclipse.equinox.launcher.win32.win32.x86_1.0.101.R34x_v20080731
-clean
-configuration
configuration
-vm
D:\Program\Sun\Java\jdk1.6.0_13\bin\javaw.exe
-vmargs
-Xms648M -->修改處
-Xmx648M -->修改處改為649就不行,比原來少796-648=48M
-->此時(shí)JVM所使用內(nèi)存總量: 648(-Xmx)+128(-XX:MaxPermSize)=776M
-XX:PermSize=128M
-XX:MaxPermSize=128M
-XX:+UseParallelGC
================================================================================
根據(jù)上面能使用的內(nèi)存總量776M,最后這樣分配
================================================================================
-debug
options
-startup
Common\plugins\org.eclipse.equinox.launcher_1.0.101.R34x_v20080819.jar
--launcher.library
Common\plugins\org.eclipse.equinox.launcher.win32.win32.x86_1.0.101.R34x_v20080731
-clean
-configuration
configuration
-vm
D:\Program\Sun\Java\jdk1.6.0_13\bin\javaw.exe
-vmargs
-Xms520M
-Xmx520M
-XX:PermSize=256M
-XX:MaxPermSize=256M
-XX:+UseParallelGC
================================================================================
(2) EclipseGanymedeJee.v3.4.0/eclipse.ini
====================
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256M
-framework
plugins\org.eclipse.osgi_3.4.0.v20080605-1900.jar
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
====================
改為:
====================
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256M
-framework
plugins\org.eclipse.osgi_3.4.0.v20080605-1900.jar
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx492m //修改處493m都不行比原來少512-492=20M
====================
(3) MyEclipse 6.5.1-GA-20080715/eclipse/elipse.ini
============================================================================
-debug
options
-vm
javaw.exe
-clean
-showsplash
com.genuitec.myeclipse.product.ide
--launcher.XXMaxPermSize
1024m
-vmargs
-Xms760m
-Xmx760m
-Duser.language=en
-XX:PermSize=64M
-XX:MaxPermSize=64M
-XX:+UseParallelGC
============================================================================
改為:
============================================================================
-debug
options
-vm
javaw.exe
-clean
-showsplash
com.genuitec.myeclipse.product.ide
--launcher.XXMaxPermSize
1024m
-vmargs
-Xms712m
-Xmx712m //改為713都不行比原來少760-712=48M
-Duser.language=en
-XX:PermSize=64M
-XX:MaxPermSize=64M
-XX:+UseParallelGC
============================================================================
MyEclipse7.5配置
============================================================================
原配置為:
-startup
../Common\plugins\org.eclipse.equinox.launcher_1.0.101.R34x_v20081125.jar
--launcher.library
../Common\plugins\org.eclipse.equinox.launcher.win32.win32.x86_1.0.101.R34x_v20080731
-clean
-configuration
configuration
-vm
D:\Program\Genuitec\Common\binary\com.sun.java.jdk.win32.x86_1.6.0.013\jre\bin\client\jvm.dll
-vmargs
-Xmx512m
-XX:MaxPermSize=256m
-XX:ReservedCodeCacheSize=64m
修改為:
----------------------------------------------------------------------------
-debug
options
-startup
../Common\plugins\org.eclipse.equinox.launcher_1.0.101.R34x_v20081125.jar
--launcher.library
../Common\plugins\org.eclipse.equinox.launcher.win32.win32.x86_1.0.101.R34x_v20080731
-clean
-configuration
configuration
-vm
D:\Program\Sun\Java\jdk1.6.0_13\bin\javaw.exe
-vmargs
-Xms648m
-Xmx648m
-XX:PermSize=128m
-XX:MaxPermSize=128m
-XX:ReservedCodeCacheSize=128m
-XX:+UseParallelGC
MyEclipse8.0GA配置
============================================================================
(1) 2009-12-01--------------------------------------------------------------
-debug
options
-startup
../Common/plugins/org.eclipse.equinox.launcher_1.0.201.R35x_v20090715.jar
--launcher.library
../Common/plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519
-install
D:/Programs/Genuitec/MyEclipse8.0GA
-vm
D:/Programs/Genuitec/Common/binary/com.sun.java.jdk.win32.x86_1.6.0.013/jre/bin/client/jvm.dll
-configuration
configuration
-vmargs
-Xms648m
-Xmx648m
-XX:PermSize=128m
-XX:MaxPermSize=128m
-XX:ReservedCodeCacheSize=128m
-XX:+UseParallelGC
-DNLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
-Duser.language=zh
這個(gè)配置啟動(dòng)會(huì)出現(xiàn)dos窗口,不會(huì)出現(xiàn)啟動(dòng)的圖片畫面,
加入
-debug
options
是為了顯示JVM的heap status狀態(tài)條,其實(shí)用不這樣做,
只需定位到windows->Preferences->
在其右邊的界面中,找到"Show heap status",并勾選上,然后確定即可;
(2) 2010-03-03--------------------------------------------------------------
-startup
../Common/plugins/org.eclipse.equinox.launcher_1.0.201.R35x_v20090715.jar
--launcher.library
../Common/plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519
-install
D:/Programs/Genuitec/MyEclipse8.0GA
-vm
D:/Programs/Genuitec/Common/binary/com.sun.java.jdk.win32.x86_1.6.0.013/jre/bin/client/jvm.dll
-configuration
configuration
-vmargs
-Xms512m
-Xmx512m
-XX:PermSize=256m
-XX:MaxPermSize=256m
-XX:ReservedCodeCacheSize=128m
-XX:+UseParallelGC
-showsplash
-Dosgi.splashLocation=D:/Programs/Genuitec/Common/plugins/com.genuitec.myeclipse.product8_8.0.0.me200911192201/splash.bmp
|
|