锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲精品无码久久久久久,男人的天堂亚洲一区二区三区,天天综合亚洲色在线精品http://www.tkk7.com/mlzry0612/articles/342780.htmlDanielDanielTue, 11 Jan 2011 09:06:00 GMThttp://www.tkk7.com/mlzry0612/articles/342780.htmlhttp://www.tkk7.com/mlzry0612/comments/342780.htmlhttp://www.tkk7.com/mlzry0612/articles/342780.html#Feedback0http://www.tkk7.com/mlzry0612/comments/commentRss/342780.htmlhttp://www.tkk7.com/mlzry0612/services/trackbacks/342780.html闃呰鍏ㄦ枃

Daniel 2011-01-11 17:06 鍙戣〃璇勮
]]>
For extension point definition's variable attribute extension point.http://www.tkk7.com/mlzry0612/articles/335091.htmlDanielDanielThu, 14 Oct 2010 02:11:00 GMThttp://www.tkk7.com/mlzry0612/articles/335091.htmlhttp://www.tkk7.com/mlzry0612/comments/335091.htmlhttp://www.tkk7.com/mlzry0612/articles/335091.html#Feedback0http://www.tkk7.com/mlzry0612/comments/commentRss/335091.htmlhttp://www.tkk7.com/mlzry0612/services/trackbacks/335091.html   <extension

         point="org.eclipse.core.expressions.propertyTesters">

      <propertyTester

            class="com.ebay.tools.vjet2.internal.debug.property.LaunchPropertyTester"

            id="com.ebay.tools.vjet2.debug.property.launch"

            namespace="com.ebay.tools.vjet2.debug"

            properties="launchJS,launchHTML"

            type="org.eclipse.core.runtime.IAdaptable">

      </propertyTester>

   </extension>



Specified class should be extends PropertyTester and implement related methods.


LaunchPropertyTester extends PropertyTester {





Others services register.

IFocusService focusService =
(IFocusService) PlatformUI.getWorkbench()
.getService(IFocusService.class);
focusService.addFocusTracker(text, "textControlId");


All variables collected in ISources class, User can find related variables in this class.

 



Daniel 2010-10-14 10:11 鍙戣〃璇勮
]]>
RCP 鏂囦歡璺緞闂 http://www.tkk7.com/mlzry0612/articles/332747.htmlDanielDanielFri, 24 Sep 2010 02:59:00 GMThttp://www.tkk7.com/mlzry0612/articles/332747.htmlhttp://www.tkk7.com/mlzry0612/comments/332747.htmlhttp://www.tkk7.com/mlzry0612/articles/332747.html#Feedback0http://www.tkk7.com/mlzry0612/comments/commentRss/332747.htmlhttp://www.tkk7.com/mlzry0612/services/trackbacks/332747.html緇堜簬鎵懼埌鐩存帴鍙互鐢ㄧ殑浜?/span> 
Java浠g爜 
  1. path = FileLocator.toFileURL(  
  2.         Platform.getBundle(IAppConstants.APPLICATION_ID)  
  3.                 .getEntry("")).getPath().toString();  



RCP 鏂囦歡璺緞闂 
String path =FileLocator.toFileURL(Platform.getBundle("宸ョ▼鍚?).getEntry("")).getPath 

寰楀埌eclipse rcp plugin 鍐呯洰褰曟枃浠剁粷瀵硅礬寰勭殑鏂規(guī)硶 
import java.io.IOException; 
import java.net.URL; 

import org.eclipse.core.runtime.FileLocator; 
import org.eclipse.core.runtime.Platform; 
import org.osgi.framework.Bundle; 

import com.work.base.exception.DataException; 
import com.work.view.Activator; 

public class BundlePathUtil { 

    public static String getRealPath(String bundleID, String entry) 
            throws DataException { 
        URL urlentry; 
        String strEntry; 
        try { 
            Bundle bundle = Platform.getBundle(bundleID); 
            if (bundle==null) 
                throw new DataException("璇鋒鏌ユ枃浠剁殑璺緞",new NullPointerException()); 
            // get path URL 
            urlentry = bundle.getEntry(entry); 
            if (urlentry==null) 
                throw new DataException("璇鋒鏌ユ枃浠剁殑璺緞",new NullPointerException()); 
            strEntry = FileLocator.toFileURL(urlentry).getPath(); 
        } catch (IOException e1) { 
            throw new DataException("璇鋒鏌ユ枃浠剁殑璺緞", e1); 
        } 
        return strEntry; 
    } 
    
    public static String getPluginPath(){        
        return Activator.getDefault().getStateLocation().makeAbsolute().toFile().getAbsolutePath(); 
        
    }   
    
} 

鍙﹀錛岃幏鍙栨彃浠?rcp 鐨剋orkspace鐨勮礬寰勶細(xì) 


Platform.getInstanceLocation().getURL().getPath() 




浠庢彃浠?RCP涓彇寰楁枃浠惰礬寰勭殑鏂規(guī)硶 

鏈榪戠ぞ鍖洪噷闂繖涓棶棰樼殑浜虹壒鍒錛屾墍浠ュ湪榪欓噷灝嗚嚜宸辯敤鍒扮殑鍑犱釜鏂規(guī)硶鍐欏嚭鏉ャ傚亣濡備互鍚庤繕鏈夊叾浠栫殑鏂規(guī)硶錛屼細(xì)榪涜鏇存柊銆?/span> 

浠庢彃浠朵腑鑾峰緱緇濆璺緞錛?/span> 
    AaaaPlugin.getDefault().getStateLocation().makeAbsolute().toFile().getAbsolutePath()); 


閫氳繃鏂囦歡寰楀埌Project錛?/span> 

IProject project = ((IFile)o).getProject(); 


閫氳繃鏂囦歡寰楀埌鍏ㄨ礬寰勶細(xì) 

String path = ((IFile)o).getLocation().makeAbsolute().toFile().getAbsolutePath(); 



寰楀埌鏁翠釜Workspace鐨勬牴錛?/span> 

IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot(); 


浠庢牴鏉ユ煡鎵捐祫婧愶細(xì) 

IResource resource = root.findMember(new Path(containerName)); 

浠嶣undle鏉ユ煡鎵捐祫婧愶細(xì) 

Bundle bundle = Platform.getBundle(pluginId); 
URL fullPathString = BundleUtility.find(bundle, filePath); 


寰楀埌Appliaction workspace錛?/span> 

Platform.asLocalURL(PRODUCT_BUNDLE.getEntry("")).getPath()).getAbsolutePath(); 

寰楀埌runtimeworkspace錛?/span> 
Platform.getInstanceLocation().getURL().getPath(); 

浠庣紪杈戝櫒鏉ヨ幏寰楃紪杈戞枃浠訛細(xì) 

IEditorPart editor = ((DefaultEditDomain)(parent.getViewer().getEditDomain())).getEditorPart(); 
IEditorInput input = editor.getEditorInput(); 
if(input instanceof IFileEditorInput){ 
IFile file = ((IFileEditorInput)input).getFile(); 
}

Daniel 2010-09-24 10:59 鍙戣〃璇勮
]]>
Simplify Eclipse classpaths using classpath containershttp://www.tkk7.com/mlzry0612/articles/331330.htmlDanielDanielTue, 07 Sep 2010 09:37:00 GMThttp://www.tkk7.com/mlzry0612/articles/331330.htmlhttp://www.tkk7.com/mlzry0612/comments/331330.htmlhttp://www.tkk7.com/mlzry0612/articles/331330.html#Feedback0http://www.tkk7.com/mlzry0612/comments/commentRss/331330.htmlhttp://www.tkk7.com/mlzry0612/services/trackbacks/331330.html闃呰鍏ㄦ枃

Daniel 2010-09-07 17:37 鍙戣〃璇勮
]]>
Extending WTP Using Project Facetshttp://www.tkk7.com/mlzry0612/articles/327766.htmlDanielDanielMon, 02 Aug 2010 09:14:00 GMThttp://www.tkk7.com/mlzry0612/articles/327766.htmlhttp://www.tkk7.com/mlzry0612/comments/327766.htmlhttp://www.tkk7.com/mlzry0612/articles/327766.html#Feedback0http://www.tkk7.com/mlzry0612/comments/commentRss/327766.htmlhttp://www.tkk7.com/mlzry0612/services/trackbacks/327766.html闃呰鍏ㄦ枃

Daniel 2010-08-02 17:14 鍙戣〃璇勮
]]>
Eclipse code templatehttp://www.tkk7.com/mlzry0612/articles/305240.htmlDanielDanielWed, 09 Dec 2009 02:12:00 GMThttp://www.tkk7.com/mlzry0612/articles/305240.htmlhttp://www.tkk7.com/mlzry0612/comments/305240.htmlhttp://www.tkk7.com/mlzry0612/articles/305240.html#Feedback0http://www.tkk7.com/mlzry0612/comments/commentRss/305240.htmlhttp://www.tkk7.com/mlzry0612/services/trackbacks/305240.htmlpublic class ScriptTemplateContext extends DocumentTemplateContext {

Daniel 2009-12-09 10:12 鍙戣〃璇勮
]]>
org.eclipse.core.expressions.definitions point at Eclipse 3.3http://www.tkk7.com/mlzry0612/articles/301712.htmlDanielDanielMon, 09 Nov 2009 07:42:00 GMThttp://www.tkk7.com/mlzry0612/articles/301712.htmlhttp://www.tkk7.com/mlzry0612/comments/301712.htmlhttp://www.tkk7.com/mlzry0612/articles/301712.html#Feedback0http://www.tkk7.com/mlzry0612/comments/commentRss/301712.htmlhttp://www.tkk7.com/mlzry0612/services/trackbacks/301712.html<extension
         point="org.eclipse.core.expressions.definitions">
      <definition
            id="com.ebay.tools.vjet2.ui.inDltk">
         <with
               variable="activePartId">
               <or>
    <equals value="org.eclipse.jdt.ui.PackageExplorer"/>
    <equals value="org.eclipse.jdt.ui.ClassFileEditor"/>

   <extension
         point="org.eclipse.ui.handlers">
      <handler
            class="com.ebay.tools.vjet2.internal.ui.actions.VjoOpenTypeHandler"
            commandId="org.eclipse.jdt.ui.navigate.open.type">
         <activeWhen>
            <reference
                  definitionId="com.ebay.tools.vjet2.ui.inDltk">
            </reference>
         </activeWhen>
      </handler>
   </extension>


   <extension point="org.eclipse.ui.actionSets">
               <actionSet label="%VjetActionSet.label" description="%VjetActionSet.description" visible="false" id="com.ebay.tools.vjet2.ui.VjetActionSet">
         <action class="com.ebay.tools.vjet2.ui.actions.VjoOpenTypeAction" definitionId="org.eclipse.jdt.ui.navigate.open.type" icon="platform:/plugin/org.eclipse.dltk.ui/icons/full/etool16/opentype.gif" id="com.ebay.tools.vjet2.ui.openType" label="%OpenTypeAction.label" menubarPath="navigate/open.ext2" tooltip="%OpenTypeAction.tooltip">
         </action>
         </actionSet>


Execute sequence: Action will be actived -->Find definediionID:org.eclipse.jdt.ui.navigate.open.type at a handler, -->handler will be actived when definited satisfied

It's very useful when cut event when override old version codes or 3rd plugin.


Daniel 2009-11-09 15:42 鍙戣〃璇勮
]]>
妯″紡瀵硅瘽妗?/title><link>http://www.tkk7.com/mlzry0612/articles/290209.html</link><dc:creator>Daniel</dc:creator><author>Daniel</author><pubDate>Fri, 07 Aug 2009 04:25:00 GMT</pubDate><guid>http://www.tkk7.com/mlzry0612/articles/290209.html</guid><wfw:comment>http://www.tkk7.com/mlzry0612/comments/290209.html</wfw:comment><comments>http://www.tkk7.com/mlzry0612/articles/290209.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/mlzry0612/comments/commentRss/290209.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/mlzry0612/services/trackbacks/290209.html</trackback:ping><description><![CDATA[ <span id="pfjrxpf" class="keyword">public</span><span> </span><span id="rvzxjrb" class="keyword">void</span><span> childShellTest(Shell shell){   </span></span> <li><span>        </span><span id="ththdtr" class="comment">//闈炴ā鎬佸璇濇 </span><span>  </span></span></li> <li><span>        ChildShell child1 = </span><span id="fdfjfxd" class="keyword">new</span><span> ChildShell(shell);   </span></span></li> <li><span>        </span><span id="vpdztbb" class="comment">//妯″紡瀵硅瘽妗?nbsp;-- 鍙鐢ㄧ埗紿椾綋 </span><span>  </span></span></li> <li><span>        ChildShell child2 = </span><span id="fzjnrjj" class="keyword">new</span><span> ChildShell(shell,SWT.DIALOG_TRIM|SWT.APPLICATION_MODAL);           </span></span></li> <li><span>        </span><span id="lppbpnv" class="comment">//妯″紡瀵硅瘽妗?nbsp;-- 紱佺敤緋葷粺紿椾綋 </span><span>  </span></span></li> <li><span>        ChildShell child3 = </span><span id="vxfbnvf" class="keyword">new</span><span> ChildShell(shell,SWT.DIALOG_TRIM|SWT.SYSTEM_MODAL);    </span></span></li> <li><span>    }   </span></li> <img src ="http://www.tkk7.com/mlzry0612/aggbug/290209.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/mlzry0612/" target="_blank">Daniel</a> 2009-08-07 12:25 <a href="http://www.tkk7.com/mlzry0612/articles/290209.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>Quick Fix implementhttp://www.tkk7.com/mlzry0612/articles/281010.htmlDanielDanielTue, 09 Jun 2009 12:46:00 GMThttp://www.tkk7.com/mlzry0612/articles/281010.htmlhttp://www.tkk7.com/mlzry0612/comments/281010.htmlhttp://www.tkk7.com/mlzry0612/articles/281010.html#Feedback0http://www.tkk7.com/mlzry0612/comments/commentRss/281010.htmlhttp://www.tkk7.com/mlzry0612/services/trackbacks/281010.htmlFor eclipse quick fix. There are lots of articles introduce how to add a marker but no reference to how to implement the Proposal .
Now i will give the solution:
First. Add the marker. It's the sample one:
1. Declare the marker extension point : org.eclipse.core.resources.markers, //Here should be clear: there are some args should be declared in pulg.in. xml file. which will be used in your code.
     and implement the IMarkerResolutionGenerator2 interface. //Generate the generator.
2. User IResource.createMarker(....) API to create the marker. // Here will give your delcared marker type.
3. Your editor must have a configure file which extends from SourceViewerConfiguration. There is a important API for our quick fix function is: getQuickAssistAssistant();
4. So you should implement the IQuickAssistAssistant, ( I extends from JavaCorrectionAssistant the in my code) and regesit it at step 4.
5. The class implement the IQuickAssistAssistant which will set a IQuickAssistProcessor instance for execute qiuck fix. API is setQuickAssistProcessor();
6. in IQuickAssistAssistant  interface the most important API is computeQuickAssistProposals(IQuickAssistInvocationContext). which will be return ICompletionProposal[]  this API is used to finish your business.
7. So some body will ask that when we will use the eclipse extension point : org.eclipse.ui.ide.markerResolution
   Now. see the  ICompletionProposal[]  return type at step 6? There have a implement class called MarkerResolutionProposal(), Let 's say it's constructor
 public MarkerResolutionProposal(IMarkerResolution resolution, IMarker marker)
 See here the org.eclipse.ui.ide.markerResolution extension point is used here. but the MarkerResolutionProposal seems only used in java syntax.
So if your have another grammer. please new a interface to extends from ICompletionProposal.
8. The details implement will be finished in class which implement IMarkerResolution. at run() API

If i have some time i will update some class diagram for this function.



Daniel 2009-06-09 20:46 鍙戣〃璇勮
]]>
Eclipse3.3鏂扮壒鎬т箣RCPhttp://www.tkk7.com/mlzry0612/articles/231984.htmlDanielDanielWed, 01 Oct 2008 05:30:00 GMThttp://www.tkk7.com/mlzry0612/articles/231984.htmlhttp://www.tkk7.com/mlzry0612/comments/231984.htmlhttp://www.tkk7.com/mlzry0612/articles/231984.html#Feedback1http://www.tkk7.com/mlzry0612/comments/commentRss/231984.htmlhttp://www.tkk7.com/mlzry0612/services/trackbacks/231984.html     鏂扮壒鎬т箣涓錛歏iewer鍜孍ditor鐨勬渶澶у寲鏈灝忓寲鏁堟灉鍙樼殑寰圕ool錛?br />     榪欎釜鏂扮壒鎬э紝鍙兘瀵瑰紑鍙戜漢鍛樻潵璇村茍娌℃湁浠涔堢█濂囩殑錛屾湁榪欎釜鍜屾病鏈夎繖涓殑鍖哄埆涓嶅ぇ銆備絾鏄浜嶳CP鐨勫紑鍙戯紝榪欎釜鏄竴涓潪甯稿惛寮曞鎴風(fēng)溂鐞冪殑鍦版柟錛屼粬浠細(xì)鐬ぇ鐪肩潧鐪嬶紝鐒跺悗鑷繁鎶婄帺錛屾渶鍚庤姹備負(fù)鑷繁寮鍙戣蔣浠剁殑鍏朵粬杞歡閮藉姞鍏ユ鍔熻兘銆俹(∩_∩)o...鍝堝搱~~澶熶粬浠繖媧葷殑浜嗭紒
    鏂扮壒鎬т箣浜岋細(xì)褰揈ditor鏈澶у寲浠ュ悗錛屽叾浠栫殑Viewer灝嗕互鏂扮殑鍒楄〃鏂瑰紡緇х畫鍑虹幇鍦ㄧ晫闈笂錛?br />     榪欎釜鍔熻兘錛屼笉濂借В閲婏紝鐪嬬湅鎶撳浘錛?br />
      寰圕ool鍚э紝瀹㈡埛涓瀹氬枩嬈㈡浜唦
      鏂扮壒鎬т箣涓夛細(xì)瀵笷orms鍔犲叆浜嗛敊璇俊鎭獙璇侊紱
      浠ュ墠鐨勭増鏈腑錛孎orm浣挎病鏈夐敊璇獙璇佺殑錛岀幇鍦ㄥ垯鍔犲叆浜咶orms鐨勯獙璇侊紝鐪嬫潵Form鐨勪嬌鐢ㄥ彲浠ユ洿蹇殑娣卞叆浜哄績浜唦

      鏂扮壒鎬т箣鍥涳細(xì)澧炲己Porperties View鐨勭幇瀹炴晥鏋滐紱

     铏界劧鎴戜笉鍠滄鍦ㄩ」鐩腑浣跨敤PorpertiesView錛堥厤緗搗鏉ュお楹葷儲錛屼笉閫傚悎鏅氬紑鍙戜漢鍛樹嬌鐢級錛屼絾鏄繕鏄劅璋clipse鐨勫紑鍙戝洟闃熸嬈″PorpertiesView鐨勫寮恒?br />      鏂扮壒鎬т箣浜旓細(xì)鍙帶鍒剁殑鍚姩鐢婚潰錛?br />      鍦‥clipse3.3涓彁渚涗簡鏂扮殑鎵╁睍鐐?font face="Courier New">org.eclipse.osgi.service.runnable.StartupMonitor錛岀敤浜庡湪鍚姩鏃朵嬌鐢⊿WT鐨勪唬鐮併?br />   鏂扮壒鎬т箣鍏細(xì)楂樼駭鐨凾ooltips錛?br />   鎻愪緵浜嗘柊鐨勬墿灞曠偣錛歰rg.eclipse.jface.window.Tooltip鐢ㄤ簬鍒涘緩鏇翠負(fù)楂樼駭鐨凾ooltips錛?br />
  鏂扮壒鎬т箣涓冿細(xì)SWT澧炲姞鏃墮棿鏃ユ湡閫夋嫨鍣紱
  :-)錛岃繖涓彲鑳芥槸澶у鏃╅兘鐭ラ亾鐨勭瀵嗕簡~鐪熸兂涓嶉氾紝鏃墮棿鍜屾棩鏈熼夋嫨鍣ㄦ棭閮藉簲璇ユ彁渚涗簡錛屼負(fù)浠涔堝埌鐜板湪鎵嶆嬁鍑烘潵錛?br />


    鏂扮壒鎬т箣鍏細(xì)鏂板鍔?縐嶅惎鍔ㄧ晫闈紱
Interactive: A simulated log-in session  浣跨敤涓涓▼搴忕櫥闄嗙晫闈㈠惎鍔?br /> Browser: An embedded HTML browser  浣跨敤涓涓狧tml浣滀負(fù)鐧婚檰鐣岄潰
Extensible: A dynamic set of image contributions 浣跨敤涓寮犲浘鐗囦綔涓哄惎鍔ㄧ晫闈?br />     鍦ㄦ柊鐨凱DE涓彲浠ュ涓涓猵roduct閫夋嫨浣跨敤閭d竴縐嶅惎鍔ㄧ晫闈㈠惎鍔紝榪欎釜鏂板姛鑳界殑澧炲姞鏄潪甯告湁鎰忎箟鐨勶紝瀹冧嬌寰桼CP搴旂敤鏇村姞鐨勪漢鎬у寲錛屼笉鐢ㄥ啀鍦ㄧ郴緇熷惎鍔ㄤ腑寮瑰嚭瀵硅瘽妗嗕簡錛岃瀹㈡埛鏇村姞鏀懼績鐨勯夋嫨鍩轟簬RCP鐨勪駭鍝佷簡~



Daniel 2008-10-01 13:30 鍙戣〃璇勮
]]>
Eclipse3.3鏂扮壒鎬т綋楠屼箣鏈澶у寲鏈灝忓寲鏀硅繘 http://www.tkk7.com/mlzry0612/articles/231983.htmlDanielDanielWed, 01 Oct 2008 05:27:00 GMThttp://www.tkk7.com/mlzry0612/articles/231983.htmlhttp://www.tkk7.com/mlzry0612/comments/231983.htmlhttp://www.tkk7.com/mlzry0612/articles/231983.html#Feedback0http://www.tkk7.com/mlzry0612/comments/commentRss/231983.htmlhttp://www.tkk7.com/mlzry0612/services/trackbacks/231983.html 
    鏄ㄥぉ鏅氫笂鍐欎簡Eclipse3.3鐨勬柊鐗規(guī)э紝蹇冧腑寮傚父鍏村錛屾兂蹇偣鐢ㄥ埌鐜版湁鐨勪駭鍝佸紑鍙戞鏋朵腑錛屼簬鏄紑濮嬫妸鐜╂渶澶у寲鏈灝忓寲鐨勬柊鐗規(guī)с?br />    鐮旂┒浜嗘暣鏁翠竴涓嬪崍涔熸病鏈夊彂鐜版湁浠涔堟柟娉曞彲浠ヨ緗竴涓猇iewer璁╁畠鍦ㄩ忚鍥懼惎鍔ㄧ殑鏃跺欒嚜宸卞仛鏈灝忓寲錛屽叾瀹炲垰寮濮嬫濊礬鏄笉瀵圭殑錛屼笉搴旇鑰冭檻璁¬iewer鑷繁鏈変粈涔堝彉鍖栵紱Viewer鐨勫ぇ灝忥紝浣嶇疆閮芥槸鍦ㄩ忚鍥句腑璁劇疆鐨勶紝瀹冭嚜宸辨槸娌℃湁浠諱綍鑳藉姏騫叉秹鐨勩?br />    鍦‥clipse鐨勬柊闂葷粍涓挩璇簡涓涓婸W鍛婅瘔鎴憃rg.eclipse.ui.perspectiveExtensions鎵╁睍鐐癸紝鎻愪緵浜嗗畾涔塚iewer鏈灝忓寲鐨勫睘鎬э紝鑰屼笖榪欎釜灞炴ф槸Eclipse3.3鏂板鐨勶紝鍙鏈夊氨濂藉姙~鏈夋牱瀛︽牱錛?br />    鎷夊嚭鏉erspectiveExtension綆$悊娉ㄥ唽浠g爜璇昏灝辨槑鐧戒簡~鍘熸潵錛?br />
1    public void createInitialLayout(IPageLayout layout) {
2            }
  閫忚鍥劇被涓殑IPageLayout鐨勫疄鐜扮被鏄疨ageLayout錛屾檿姝伙紝鍦‥clipse鐨凙PI涓珶鐒舵病鏈変漢鍛婅瘔鎴憕
  浜庢槸鍙渶瑕佽繖鏍峰氨鍙互璁╀竴涓猇iewer鍦ㄩ忚鍥懼惎鍔ㄦ椂鍋氭渶灝忓寲浜嗭紝濡傛灉浣犵敤鐨勬槸Eclipse3.3寮鍙慠CP紼嬪簭錛岄偅涔堝氨鍙互闈炲父鏂逛究鐨勭粰瀹㈡埛鍦ㄤ竴涓忚鍥句腑灞曠幇澶氫釜Viewer浜唦
   浠g爜濡備笅錛?br />
    public void createInitialLayout(IPageLayout layout) {
        PageLayout pageLayout 
=
 (PageLayout)layout;
        
//layout.addView(ViewPart1.class.getName(), IPageLayout.LEFT, 0.35f, layout.getEditorArea());

        pageLayout.addView(ViewPart1.class.getName(), IPageLayout.LEFT, 0.35f, layout.getEditorArea(), true);
    }
   Eclipse寮鍙戝洟闃熷叾瀹炲氨鏄湪IPageLayout瀹炵幇綾諱腑榪藉姞浜嗕竴涓柟娉晘鍝巭浠涔堥伒寰帴鍙g紪紼媬浠栦滑绔熺劧涓嶄慨鏀規(guī)帴鍙甯屾湜姝e紡鐗堝彂甯冪殑鏃跺欒繖涓棶棰樻湁淇敼~

 


Daniel 2008-10-01 13:27 鍙戣〃璇勮
]]>
Eclipse3.4鐨勪竴浜涘ソ鐢ㄧ殑鍔熻兘http://www.tkk7.com/mlzry0612/articles/231980.htmlDanielDanielWed, 01 Oct 2008 05:24:00 GMThttp://www.tkk7.com/mlzry0612/articles/231980.htmlhttp://www.tkk7.com/mlzry0612/comments/231980.htmlhttp://www.tkk7.com/mlzry0612/articles/231980.html#Feedback0http://www.tkk7.com/mlzry0612/comments/commentRss/231980.htmlhttp://www.tkk7.com/mlzry0612/services/trackbacks/231980.html      1.蹇熻闂姛鑳斤細(xì)濡傛灉浣犳兂浣跨敤鍝釜鍛戒護(hù)錛屽彧闇瑕佺偣Ctrl+3鍚姩蹇熻闂紝鍦ㄩ噷闈㈣緭鍏ュ懡浠ょ殑鍓峮涓瓧姣嶆垨鑰呴瀛楁瘝緙╁啓錛屽氨鍙互閫夋嫨浣犺榪愯鐨勫懡浠や簡銆?br style="font-family: " />      2.瀵硅祫婧愶紝浠誨姟錛屼功絳劇殑鎿嶄綔閮藉彲浠ヨ鎾ら攢浜嗐?br style="font-family: " />      3.鏀寔鍐呭鐨勬嫋鎷斤紝濡傛妸絎竴琛岀殑鍐呭鐩存帴鎷栨嫿鍒扮涓夎
    4.
鎸変綇Ctrl閿笉鏉炬墜錛屼嬌鐢ㄩ紶鏍囨粴杞彲榪呴熷埌杈懼唴瀹圭殑寮澶存垨緇撳熬
    5.
鍙屽嚮榧犳爣鍙互閫変腑涓涓崟璇嶏紝涓夊嚮榧犳爣鍙互閫変腑涓琛?br style="font-family: " />     6.濡傛灉鏌愪竴琛岀殑寮澶存垨鑰呯粨灝炬湁鑻ュ共絀虹櫧瀛楃錛屽綋浣跨敤HOME/END閿椂錛岀涓嬈$偣鍑誨拷鐣ョ┖鐧藉瓧絎︼紝鍏夋爣鍙埌杈懼唴瀹圭殑寮澶存垨緇撳熬錛岀浜屾鐐瑰嚮鍏夋爣鎵嶅埌杈劇湡姝g殑寮澶存垨緇撳熬銆?br style="font-family: " />     7. 鍦╬roperties閲岀殑Editor閲屽姞浜嗕竴涓猻ave action鐨勫睘鎬э紝鍙互鍦╯ave鐨勬椂鍊欒Е鍙戜綘鎯寵Е鍙戠殑涓滆タ錛屼緥濡傦細(xì)鏍煎紡鍖栫瓑絳夈?br style="font-family: " />     8.Ctrl+Alt+J 鎶婁笅涓琛岃繛鎺ュ埌榪欎竴琛岀殑鍚庨潰
   10.鍙傛暟鎵撳寘閲嶆瀯錛氬浜庤繖鏍風(fēng)殑鍑芥暟int add(int a, int b, int c),鐢變簬鍙傛暟姣旇緝澶氾紝鍙互鑰冭檻灝嗗叾鍚堝茍涓轟竴涓被錛岃繖涓被鍖呭惈3涓睘鎬э紝榪欎釜綾葷殑鍔熻兘灝辨槸涓撻棬涓鴻繖涓嚱鏁板仛鍙傛暟銆傚湪鏂扮増鏈殑Eclipse涓紝閫変腑涓涓嚱鏁幫紝鍙抽敭鑿滃崟refactor-> Introduce Parameter Object鍙互瀹炵幇榪欎竴鍔熻兘銆傦紙褰撶劧錛屼嬌鐢ㄦ柊鐗堟湰鐨勫揩閫熻闂姛鑳斤紝杈撳叆棣栧瓧姣峣po涔熷彲浠ュ疄鐜拌繖涓鍔熻兘錛屾柟渚垮晩~錛?br style="font-family: " />    11.寮哄ぇ鐨刢lean up鍔熻兘錛氬彲浠ユ妸鏅氬驚鐜彉鎴恌oreach寰幆錛屽彲浠ュ垹闄や粠鏈嬌鐢ㄧ殑鍙橀噺銆佸嚱鏁幫紝鍙互鍦ㄩ傚綋鐨勫湴鏂規(guī)坊鍔犳坊鍔燖Override錛屽彲浠ョ粰鎵鏈夌殑for錛宨f浠g爜鍧楁坊鍔犲ぇ鎷彿……鎬諱箣鍔熻兘寰堝己澶т簡銆傚湪source->clean up鑿滃崟涓嬭闂?br style="font-family: " />      鏉ョ偣鍥?br />
Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?
浠嬬粛
eclipse 3.4 浠e彿涓篻anymede 錛圙 anymede (鑻辮鍙戦煶"GAN uh meed")涓烘渶澶х殑鏈ㄦ槦宸茬煡鍗槦錛屼篃鏄涓冮鍙戠幇鐨勬湪鏄熷崼鏄燂紝鍦ㄤ冀鍒╃暐鍙戠幇鐨勫崼鏄熶腑紱繪湪鏄熺涓夎繎,鍦ㄥ笇鑵婄璇濅腑 Ganymede鏄竴涓壒媧涗紛緹庝漢鐨勭敺瀛?涓涓編灝戠敺)錛岃瀹欐柉甯﹀幓緇欎紬紲炴枱閰掞級銆?

1.闈㈠寘灞?/strong>
鍏跺疄灝辨槸褰撳墠綾誨埌欏圭洰(project)鐨勮礬寰勶紝鍏朵腑鍖呮嫭鍖呭拰鏂囦歡澶廣?
鍙﹀錛屼嬌鐢ㄨ呰繕鍙互鑷敱鍦板湪鍚屼竴璺緞涓嬬殑鏌愪釜鑺傜偣澶勶紝綰靛悜鍒囨崲鍒板叾浠栧厓绱犮?

Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?

鍦ㄨ妭鐐規(guī)墍鍦ㄤ綅緗仛涓浜涙搷浣?姣斿鍦ㄥ悓綰ф柊澧炰竴涓被

Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?

綰靛悜鍒囨崲鍏冪礌

Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?

2.閽堝鏈夐棶棰樼殑浠g爜錛屽彧瑕侀紶鏍囩Щ鍔ㄤ笂鍘伙紝灝辮兘鎻愮ず瑙e喅鏂規(guī)淇℃伅

Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?


3.涓囪兘鐨勫揩閫熷崗鍔?quick assist)
鍙鍦ㄤ換浣曚唬鐮佸錛屾寜 ctrl + 1錛屽氨鏈夊彲鑳藉嚭鐜扮浉鍏崇殑鎻愮ず錛岄嫻嬩綘鐨勪笅涓姝ュ姩浣溿?

鍒涘緩getter 鍜?setter
Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?


鎶藉彇鏂規(guī)硶
Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?

灝嗕綆鎬ц兘鐨勫瓧絎︿覆鎷兼帴錛屾敼鐢⊿tringBuilder
Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?

灝嗗瓧絎︿覆鎷兼帴鏀圭敤MessageFormat
Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?


4.鎸変繚瀛樻椂錛岃嚜鍔ㄦ牸寮忓寲浠g爜錛堝垎鏍煎紡鍖栧叏鏂囧拰鏍煎紡鍖栦慨鏀圭殑浠g爜錛?
鐪佸幓浜嗭紝淇濆瓨鍓嶏紝鎸塩trl + shift + f 鐨勬椂闂淬?

Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?

5.褰撳墠鍏冪礌鐨勯珮浜姛鑳斤紝鏍規(guī)嵁鍏冪礌鏄寮曠敤榪樻槸璧嬪鹼紙璇繪垨鍐欙級錛屾潵 鍖哄垎 涓嶅悓鐨勯鑹?/strong>
Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?


6.annotation 鏍煎紡鍖?/strong>

Annotations on members: Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?

Annotations on parameters: Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?

Annotations on local variables: Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?

7.Junit 鏀寔瀵圭嚎紼嬪唴姣忎釜甯э紙鏂規(guī)硶錛夌殑璋冪敤鏃墮棿杈撳嚭

Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?

8.鍦╫utline閲岋紝鏀寔瀵瑰悓涓涓被涓紝鏂規(guī)硶鐨勯噸鎺掑簭

Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?

9.鏌ユ壘鏌愪釜鍏冪礌鐨勮皟鐢ㄥ眰嬈★紝鏀寔鏇村錛屾洿緇嗙殑鍐呭錛屽寘鎷垚鍛樺彉閲忚闂瓑錛宑all hierarchy

Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?

10.鏇村鐨勬悳绱㈤夐」

Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?

11.鍔犲己浜哾ebug 鍙橀噺鏌ョ湅鍔熻兘錛屼笉闇瑕佸啀鎸?ctrl + shift + i 鏉ユ煡鐪嬪彉閲忕殑鍊?

Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?

12.鏂板妯℃嫙鏈嶅姟绔洃鍚殑debug鍔熻兘

Eclipse3.4鍙戝竷 鏂扮壒鎬у睍紺?



Daniel 2008-10-01 13:24 鍙戣〃璇勮
]]>
Eclipse Action Enable stauts <Test>http://www.tkk7.com/mlzry0612/articles/221505.htmlDanielDanielTue, 12 Aug 2008 07:26:00 GMThttp://www.tkk7.com/mlzry0612/articles/221505.htmlhttp://www.tkk7.com/mlzry0612/comments/221505.htmlhttp://www.tkk7.com/mlzry0612/articles/221505.html#Feedback0http://www.tkk7.com/mlzry0612/comments/commentRss/221505.htmlhttp://www.tkk7.com/mlzry0612/services/trackbacks/221505.html

涓婁竴綃囨枃绔?/font>鎴戜滑鐭ラ亾浜咵clipse寮瑰嚭鑿滃崟鐨勫熀鏈敤娉曘傚叾瀹濫clipse鐨勫脊鍑鴻彍鍗曞彲浠ョ敤鏉ュ仛寰堝鏂囩珷錛岀畝鍗曚竴鐐圭殑鏍規(guī)嵁鏂囦歡綾誨埆錛屾垜浠彲浠ヨ繘琛屼笉鍚岀殑鏂囦歡鎿嶄綔錛屾瘮濡侫nt鐨刡uild.xml鎴戜滑鍙互鐢ㄦ潵build錛孞ava鏂囦歡鎴戜滑鍙互鐢↗ava Editor鎵撳紑錛岃繖浜涘熀浜庢枃浠剁被鍨嬬殑鎿嶄綔鎴戜滑閮藉彲浠ュ緢瀹規(guī)槗鐨勫疄鐜般備絾鏄繕鏈変竴縐嶆儏鍐碉紝濡傛灉鏂囦歡綾誨瀷涓鏍鳳紝鎴戜滑鎯寵繘琛屼笉鍚岀殑鎿嶄綔錛岃鎬庝箞瀹炵幇鍛紵瀹為檯涓婅繖鏍風(fēng)殑搴旂敤寰堝錛屾瘮濡傚悓鏍鋒槸Java鏂囦歡錛屽惈鏈塵ain鏂規(guī)硶鐨凧ava鏂囦歡鏈塕un鍜孌ebug鐨勯夐」錛屽叾瀹冪殑閮芥病鏈夈傝繕鏈夌幇鍦ㄧ殑妗嗘灦閮芥槸鍩轟簬XML鏂囦歡榪涜閰嶇疆鐨勶紝濡傛灉涓涓」鐩嬌鐢ㄤ簡澶氫釜妗嗘灦錛屾垜浠庝箞鏍規(guī)嵁涓嶅悓鐨刋ML鏂囦歡榪涜妗嗘灦鐨勫尯鍒嗗憿錛熺瓟妗堝氨鏄痚nablement鐨則est銆?/font>

<!ELEMENT test EMPTY>
<!ATTLIST test
property CDATA #REQUIRED
args     CDATA #IMPLIED
value    CDATA #IMPLIED>

This element is used to evaluate the property state of the object in focus. The set of testable properties can be extended using the propery tester extension point. The test expression returns EvaluationResult.NOT_LOADED if teh property tester doing the actual testing isn't loaded yet.

  • property - the name of an object's property to test.
  • args - additional arguments passed to the property tester. Multiple arguments are seperated by commas. Each individual argument is converted into a Java base type using the same rules as defined for the value attribute of the test expression.
  • value - the expected value of the property. Can be omitted if the property is a boolean property. The test expression is supposed to return EvaluationResult.TRUE if the property matches the value and EvaluationResult.FALSE otherwise. The value attribute is converted into a Java base type using the following rules:
    • the string "true" is converted into Boolean.TRUE
    • the string "false" is converted into Boolean.FALSE
    • if the string contains a dot then the interpreter tries to convert the value into a Float object. If this fails the string is treated as a java.lang.String
    • if the string only consists of numbers then the interpreter converts the value in an Integer object.
    • in all other cases the string is treated as a java.lang.String
    • the conversion of the string into a Boolean, Float, or Integer can be suppressed by surrounding the string with single quotes. For example, the attribute value="'true'" is converted into the string "true"


姣斿鎴戜滑瑕佽鍚湁main鏂規(guī)硶鐨凧ava鏂囦歡瀹冪殑鍙抽敭寮瑰嚭鑿滃崟鍖呭惈涓涓澶栫殑閫夐」“This is main class”錛岄渶瑕佺紪鍐欏涓嬬殑Plugin.xml錛?/font>

< plugin >
   
< extension
         
point ="org.eclipse.ui.popupMenus" >

      
< objectContribution
        
id ="Advanced.PopupMenus"

        objectClass
="java.lang.Object" >
     
< action  id ="Advanced.PopupMenus.Action"
        label
="AdvancedPopupMenus"
        style
="pulldown"
        menubarPath
="additions"
        class
="advancedpopupmenus.popup.actions.AdvancedPopupMenusAction"  
        enablesFor
="+" >

     
</ action >
     
< enablement >
          
< test  property ="advancedpopupmenus.popup.visable" />
     
</ enablement >   
     
</ objectContribution >

   
</ extension >
   
< extension  point ="org.eclipse.core.expressions.propertyTesters" >
   
< propertyTester
   
namespace ="advancedpopupmenus.popup"

   properties
="visable"
   type
="java.lang.Object"
   class
="advancedpopupmenus.popup.actions.VisablePropertyTester"
   id
="advancedpopupmenus.popup.propertyTesters.visable" >   
   
</ propertyTester >
      
   
</ extension >

</ plugin >

鎴戜滑闇瑕佹嫻嬪湪褰撳墠鎯呭喌涓嬫槸鍚﹂渶瑕佹樉紺鴻繖涓彍鍗曢」錛屼嬌鐢ㄦ墿灞曠偣 org.eclipse.core.expressions.propertyTesters 錛?br /> <!ELEMENT propertyTester EMPTY>
<!ATTLIST propertyTester
id         CDATA #REQUIRED
type       CDATA #REQUIRED
namespace  CDATA #REQUIRED
properties CDATA #REQUIRED
class      CDATA #REQUIRED>

id - unique identifier for the property tester
type - the type to be extended by this property tester
namespace - a unique id determining the name space the properties are added to
properties - a comma separated list of properties provided by this property tester
class - the name of the class that implements the testing methods. The class must be public and extend org.eclipse.core.expressions.PropertyTester with a public 0-argument constructor. 

榪欓噷鍙』娉ㄦ剰
propertyTester鐨刵amespace鍜宲roperties姝eソ瀵瑰簲test鐨刾roperty銆?br />
鑷充簬媯嫻嬬殑閫昏緫鎴戜滑鍦╝dvancedpopupmenus.popup.actions.VisablePropertyTester涓疄鐜幫紝榪欎釜綾誨繀欏葷戶鎵胯嚜org.eclipse.core.expressions.PropertyTester銆?/font>

package  advancedpopupmenus.popup.actions;

import
 org.eclipse.core.expressions.PropertyTester;
import
 org.eclipse.jdt.core.IMethod;
import
 org.eclipse.jdt.core.IType;
import
 org.eclipse.jdt.core.JavaModelException;
import
 org.eclipse.jdt.internal.core.CompilationUnit;

public   class  VisablePropertyTester  extends
 PropertyTester
{
    
public   boolean
 test( Object receiver, String property, Object[] args,
            Object expectedValue )
    {
        
if  (  ! ( receiver  instanceof
 CompilationUnit ) )
            
return   false
;
        CompilationUnit unit 
=
 (CompilationUnit) receiver;
        
try

        {
            IType[] types 
=  unit.getTypes( );
            
if  ( types  ==   null
 )
                
return   false
;
            
for  (  int  i  =   0 ; i  <  types.length; i ++
 )
            {
                IMethod[] methods 
=
 types[i].getMethods( );
                
if  ( methods  ==   null
 )
                    
return   false
;
                
for  (  int  j  =   0 ; j  <  methods.length; j ++
 )
                {
                    
if
 ( methods[j].isMainMethod( ) )
                        
return   true
;
                }
            }
        }
        
catch
 ( JavaModelException e )
        {
            e.printStackTrace( );
        }
        
return   false
;
    }
}

鎴戜滑鍙鍒ゆ柇鎺ュ彈鐨凧ava鏂囦歡涓槸鍚﹀惈鏈塵ain鏂規(guī)硶錛屽鏋滄湁錛屽垯榪斿洖True錛屾病鏈夊垯榪斿洖False銆?br />
濡傛灉鎴戜滑鏄鎺ュ彈涓涓猈eb寮鍙戠殑閰嶇疆鏂囦歡錛屾垜浠彲浠ヨ繖鏍峰啓錛?/font>

< plugin >
   
< extension
         
point ="org.eclipse.ui.popupMenus" >

      
< objectContribution
        
id ="Advanced.PopupMenus"

        objectClass
="org.eclipse.core.resources.IFile"
        nameFilter
="*.xml" >    
        
< action  id ="Advanced.PopupMenus.Action"

           label
="This is web xml"
           style
="pulldown"
           menubarPath
="additions"
           class
="advancedpopupmenus.popup.actions.AdvancedPopupMenusAction"     
           enablesFor
="+" >

        
</ action >
        
< enablement >
             
< test  property ="advancedpopupmenus.popup.visable" />
        
</ enablement >   
     
</ objectContribution >

   
</ extension >
   
< extension  point ="org.eclipse.core.expressions.propertyTesters" >
      
< propertyTester
            
namespace ="advancedpopupmenus.popup"

            properties
="visable"
            type
="org.eclipse.core.resources.IFile"
            class
="advancedpopupmenus.popup.actions.VisablePropertyTester"
            id
="advancedpopupmenus.popup.propertyTesters.visable" >         
      
</ propertyTester >
      
   
</ extension >

</ plugin >

娉ㄦ剰鍜屼笂涓涓緥瀛愪笉鍚岀殑鍦版柟錛宱bjectClass錛宯ameFileter鍜宼ype(鍦ㄤ笂涓涓緥瀛愪腑錛屾垜浠篃鍙互浣跨敤objectClass="org.eclipse.core.resources.IFile" nameFilter ="*.java" )錛岀浉搴旂殑鎴戜滑鐨刅isablePropertyTester綾諱篃瑕佸仛涓浜涙敼鍔細(xì)

package  advancedpopupmenus.popup.actions;

import
 javax.xml.parsers.DocumentBuilder;
import
 javax.xml.parsers.DocumentBuilderFactory;
import
 org.eclipse.core.expressions.PropertyTester;
import
 org.eclipse.core.resources.IFile;
import
 org.w3c.dom.Document;
import
 org.w3c.dom.DocumentType;

public   class  VisablePropertyTester  extends
 PropertyTester
{
    
public   boolean
 test( Object receiver, String property, Object[] args,
            Object expectedValue )
    {
        
if  (  ! ( receiver  instanceof
 IFile ) )
            
return   false
;
        IFile xml 
=
 (IFile) receiver;
        
try

        {
            DocumentBuilderFactory dbf 
=  DocumentBuilderFactory.newInstance( );
            DocumentBuilder db 
=
 dbf.newDocumentBuilder( );
            Document doc 
=
 db.parse( xml.getContents( ) );
            DocumentType type 
=
 doc.getDoctype( );
            
if (type.getSystemId( ).equalsIgnoreCase(  " http://java.sun.com/j2ee/dtds/web-app_2_2.dtd "  )) return   true
;
        }
        
catch
 ( Exception e )
        {
            e.printStackTrace( );
        }        
        
return   false
;
    }
}

榪欐牱鏍規(guī)嵁涓嶅悓鐨剎ml SystemID錛屾垜浠氨鑳藉鐭ラ亾鍒板簳榪欐槸鍝竴縐嶆鏋剁殑閰嶇疆鏂囦歡浜嗐?/font>



Daniel 2008-08-12 15:26 鍙戣〃璇勮
]]>
瑙e喅Myeclipes瀹屾暣鐗堢殑灝忛棶棰?/title><link>http://www.tkk7.com/mlzry0612/articles/221216.html</link><dc:creator>Daniel</dc:creator><author>Daniel</author><pubDate>Mon, 11 Aug 2008 01:58:00 GMT</pubDate><guid>http://www.tkk7.com/mlzry0612/articles/221216.html</guid><wfw:comment>http://www.tkk7.com/mlzry0612/comments/221216.html</wfw:comment><comments>http://www.tkk7.com/mlzry0612/articles/221216.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.tkk7.com/mlzry0612/comments/commentRss/221216.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/mlzry0612/services/trackbacks/221216.html</trackback:ping><description><![CDATA[錛?銆鏃犳硶鐪嬪埌jdk 婧愪唬鐮併係olution: 1. 鏇挎崲JDK.銆錛掋傘鐢ㄦ湁婧愮爜鐨別clipse.  <br /> <span style="color: #000000"><br /> <br /> 鐜板湪鍦↗ava寮鍙戜腑錛屼嬌鐢ㄧ殑寮鍙戝伐鍏峰ぇ閮ㄥ垎閮芥槸Eclipse錛屽茍涓斿拰Eclipse鍏崇郴绱у瘑鐨勮鏁癕yEclipse浜嗭紝浣嗘槸MyEclipse鏄竴涓狤XE鍙墽琛岀▼搴忥紝瀵逛簬娌℃湁瀹夎Eclipse涓嶮yEclilpse鐨勭數(shù)鑴戞潵璇達(dá)紝棣栧厛寰楀厛瑙e帇Eclipse錛岀劧鍚庡啀瀹夎MyEclipse錛岃繖涓嶅厜寰堥夯鐑︼紝鑰屼笖榪樺緢璐規(guī)椂錛屽浜庡凡緇忓畨瑁呭ソ鐨勭數(shù)鑴戞潵璇達(dá)紝濡傛灉鍝ぉ鐢?shù)鑴戝囖Z簡闂鎴栨槸Eclipse宕╂簝浜嗭紝瀵艱嚧宸ュ叿涓嶈兘鐢紝榪欐椂鍙堜笉寰椾笉閲嶆柊瀹夎鏃訛紝閭e彲鐪熷閮侀椃婊達(dá)綖锝烇綖錛屽洜姝わ紝澶ц薄鏈潃鎴戜負(fù)浜轟漢錛屼漢浜轟負(fù)鎴戠殑濂夌尞綺劇錛屽湪姝わ紝灝咵clipse+MyEclipse鐨勫畬鍏ㄧ豢鑹茬増鍒朵綔鏂規(guī)硶鍐欏嚭鏉ワ紝鍜屽ぇ瀹朵竴璧峰垎浜紝璁╁ぇ瀹墮兘鑳戒韓鍙楀埌榪欑鏂逛究銆?br />         鍦ㄨ繖閲岋紝澶ц薄閲囩敤Eclipse3.3.1涓嶮yEclipse_6.0.1GA_E3.3.1_Installer鐗堟潵涓句緥璇存槑錛屽叾瀹冪殑鐗堟湰鍋氭硶涓庢鐩稿悓銆?/span><br />         <span style="color: #0000ff"><span style="color: #0000ff"><strong>絎?姝ワ細(xì)涓嬭澆Eclipse3.3.1鍜孧yEclipse_6.0.1GA<br /> </strong><span style="font-size: 10pt; color: black; font-family: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">           榪欓噷鎴戣鎻愰啋澶у娉ㄦ剰涓涓嬶細(xì)涓嬭澆</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 瀹嬩綋">Eclipse</span><span style="font-size: 10pt; color: black; font-family: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">鏃朵笉瑕侀夋嫨</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 瀹嬩綋">3.2</span><span style="font-size: 10pt; color: black; font-family: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">鐨勭増鏈紝鍥犱負(fù)</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 瀹嬩綋">MyEclipse6.0</span><span style="font-size: 10pt; color: black; font-family: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">闇瑕?/span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 瀹嬩綋">3.3</span><span style="font-size: 10pt; color: black; font-family: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">鐗堟湰浠ヤ笂鐨勬敮鎸侊紝鍙﹀灝辨槸涓嬭澆</span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 瀹嬩綋">MyEclipse</span><span style="font-size: 10pt; color: black; font-family: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">鏃朵笉瑕佷笅瀹屽叏鐗堬紝鑰屽簲璇ュ彧涓嬫彃浠剁増錛屾垜鐨勮繖涓?/span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 瀹嬩綋">MyEclipse6.0.1</span><span style="font-size: 10pt; color: black; font-family: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">鐨勬彃浠剁増鏄?/span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 瀹嬩綋">176M銆?br /> <img height="34" alt="" hspace="2" src="http://www.tkk7.com/images/blogjava_net/bolo/eclipse/1.JPG" width="495" vspace="5" border="0" /><br />         <strong><span style="font-size: 10pt; color: blue; font-family: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">絎?/span><span lang="EN-US" style="font-size: 10pt; color: blue; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 瀹嬩綋">2</span></strong><strong><span style="font-size: 10pt; color: blue; font-family: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">姝ワ細(xì)瑙e帇</span><span lang="EN-US" style="font-size: 10pt; color: blue; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 瀹嬩綋">Eclipse3.3.1</span></strong> <br /> <span style="font-size: 10pt; color: black; font-family: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">          灝?/span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 瀹嬩綋">Eclipse3.3.1</span><span style="font-size: 10pt; color: black; font-family: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">鐨勫帇緙╁寘瑙e帇鍒?/span><span lang="EN-US" style="font-size: 10pt; color: black; font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 瀹嬩綋">D</span><span style="font-size: 10pt; color: black; font-family: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">鐩樻牴鐩綍涓嬨?br /> <img height="256" alt="" src="http://www.tkk7.com/images/blogjava_net/bolo/eclipse/2.JPG" width="505" border="0" /><br /> <br />           鍋氳繖涓豢鑹茬増錛屾妸瀹冩斁鍦ㄦ牴鐩綍涓嬫槸鍥犱負(fù)榪欐牱鍋氬緢鏂逛究錛?span style="color: #ff0000">鍦ㄨ繖閲岋紝澶ц薄浠鐩樹負(fù)渚嬶紝鏉ヨ鏄庡埗浣滄柟娉曘?/span><br />     <span style="color: #0000ff"><strong>絎?姝ワ細(xì)瀹夎MyEclipse6.0.1GA<br /> </strong><span style="color: #000000">           鍙屽嚮"<font style="color: #ff0000" face="瀹嬩綋" color="#0000ff" size="2">MyEclipse_6.0.1GA_E3.3.1_Installer.exe</font>"寮濮嬪畨瑁匨yEclipse錛屽湪絎?姝?"Choose Eclipse Folder"鏃訛紝娉ㄦ剰 "Please Choose Existing Eclipse Installation Folder"錛岀偣鍑?Choose...",璇烽夋嫨浣犺В鍘嬬殑Eclipse鏂囦歡澶癸紝閫夋嫨濂戒箣鍚庡涓嬪浘錛?br /> <img height="465" alt="" src="http://www.tkk7.com/images/blogjava_net/bolo/eclipse/4.JPG" width="622" border="0" /><br />           鐐瑰嚮"Next"錛屽嚭鐜?Where Would You Like to Install MyEclipse 6.0.1?",鐐瑰嚮"Choose...",閫夋嫨涓婇潰鐨別clipse鏂囦歡澶癸紝榪欐椂璁板緱鍦╡clipse鍚庨潰鍔犱竴涓洰褰曞悕錛屽惁鍒欙紝MyEclipse鐨勫畨瑁呮枃浠跺氨浼?xì)鍏ㄩ儴鏀惧湪eclipse鐨勬牴鐩綍涓嬶紝榪欏彲涓嶆槸鎴戜滑甯屾湜鐪嬪埌婊達(dá)紝璁劇疆濂戒箣鍚庡涓嬪浘:<br /> <img height="467" alt="" hspace="2" src="http://www.tkk7.com/images/blogjava_net/bolo/eclipse/5.JPG" width="622" vspace="5" border="0" /><br />            涓嬮潰鐨勫畨瑁呮病浠涔堝ソ璇寸殑錛屽氨鏄竴璺疦ext浜嗐傚畨瑁呯粨鏉熷悗錛屽彲浠ュ湪eclipse鐩綍涓嬬湅鍒版湁涓涓?MyEclipse 6.0.1GA"榪欎釜鏂囦歡澶?榪涘幓鐪嬬湅錛屾槸涓嶆槸鏈変袱涓枃浠跺す錛屼袱涓枃浠訛紵<br /> <img height="71" alt="" hspace="2" src="http://www.tkk7.com/images/blogjava_net/bolo/eclipse/10.JPG" width="438" vspace="5" border="0" /><br />            OK,鍒版MyEclipse鎻掍歡宸茬粡瀹夎瀹屾垚浜嗭紝涓嬮潰鏉ヨ繘琛屾垜浠殑緇胯壊鎻掍歡鍒朵綔銆?br />     <span style="color: #0000ff"><strong>絎?姝ワ細(xì)鎻掍歡鍒朵綔<br /> </strong><span style="color: #000000">           鍦╡clipse鐩綍涓嬶紝鏂板緩涓涓枃浠跺す錛屽懡鍚嶄負(fù)"<font style="background-color: #ffffff" face="瀹嬩綋" size="2">ThirdPlugins</font>"錛堜綘瑕佸彇鍒殑鍚嶅瓧涔熷彲浠ワ紝涓嶈繃涓瀹氳鍜宭inks鐩綍閲岄潰鐨勯厤緗枃浠朵腑鐨勮礬寰勪竴鑷達(dá)紝鍚庨潰浼?xì)鏈夎鏄?,灝?MyEclipse 6.0.1GA"榪欎釜鏂囦歡澶瑰鍒跺埌"ThirdPlugins"鐩綍涓嬶紝鍒敤鍓垏鍠旓紝榪欏彲鏄垰鎵嶅畨瑁匨yEclipse鐨勭洰褰曪紝絳変細(xì)榪樿緙瘋澆MyEclipse錛屽鏋滆繖涓洰褰曟病鏈変簡錛屽埌鏃剁擠杞戒笉浜嗭紝鍑轟簡浠涔堥棶棰樺彲涓嶈鎬ぇ璞″枖錛?br />            MyEclipse瀹夎濂戒箣鍚庯紝浼?xì)鍦╡clipse鐩綍涓嬬敓鎴愪竴涓猯inks鏂囦歡澶癸紝閲岄潰鏈変竴涓?com.genuitec.eclipse.MyEclipse.link"鏂囦歡錛屾垜浠垹闄ゅ畠錛屽彟澶栨柊寤轟竴涓?MyEclipse 6.0.1GA.ini"鏂囦歡錛屽唴瀹逛負(fù)錛?span style="color: #ff0000">path=ThirdPlugins/MyEclipse 6.0.1GA<br />            <span style="color: #000000">淇濆瓨瀹屼箣鍚庯紝鎴戜滑鐨勬彃浠跺埗浣滀篃緇撴潫浜嗭紝鐒跺悗灝辨槸緙瘋澆MyEclipse錛屽崈涓囦笉瑕佺洿鎺ユ妸閭d釜鏂囦歡澶瑰垹鎺夛紝鑰屽簲璇ョ擠杞藉畠銆?br /> <img height="74" alt="" hspace="2" src="http://www.tkk7.com/images/blogjava_net/bolo/eclipse/9.JPG" width="381" vspace="5" border="0" /><br /> <img height="79" alt="" hspace="2" src="http://www.tkk7.com/images/blogjava_net/bolo/eclipse/8.JPG" width="347" vspace="5" border="0" /><br />            鍏跺疄鎵鏈夌殑鎻掍歡閮藉彲浠ユ寜榪欎釜鏂瑰紡鏉ュ仛錛岃繖鏍峰仛鐨勫ソ澶勫氨鏄紝鎯崇敤灝辨斁榪涘幓錛屼笉鎯崇敤灝卞垹鎺夛紝濡傛灉鏀懼埌eclipse鐨刦eatures鍜宲lugins閲岄潰錛屼細(xì)寰堜笉濂界鐞嗐?br />     <span style="color: #0000ff"><strong>絎?姝ワ細(xì)閰嶇疆鍙傛暟</strong></span><br />            铏界劧鎻掍歡宸茬粡瀹夎濂戒簡錛屼絾鏄紝姝ゆ椂鎴戜滑榪樹笉鑳藉惎鍔ㄥ畠錛屽簲璇ュeclipse鐨勫惎鍔ㄥ弬鏁拌緗竴涓嬶紝鎻愰珮瀹冪殑鍚姩閫熷害鍜岃繍琛屾椂鐨勭ǔ瀹氭с傚湪eclipse.exe涓婄偣鍙抽敭錛岄夋嫨"鍒涘緩蹇嵎鏂瑰紡"錛屽湪蹇嵎鏂瑰紡涓婄偣鍙抽敭錛岄夋嫨"灞炴?錛屽湪"D:\eclipse\eclipse.exe鍚庨潰鍔犱笂絀烘牸錛屽皢榪欎簺鍙傛暟鍔犲湪鍚庨潰錛?br />            <span style="color: #ff0000">-vmargs -Xverify:none -XX:+UseParallelGC -XX:PermSize=20M -XX:MaxPermSize=128M -Xms256M -Xmx512M<br />            <span style="color: #000000">-Xms256M -Xmx512M錛氳繖鏄爢錛屾牴鎹唴瀛樺ぇ灝忔潵璁劇疆錛屾瘮濡傚ぇ璞$殑鍐呭瓨鏄?G,鎴戝氨璁炬垚256鍜?12錛岃繖鏍蜂竴鑸兘澶熺敤浜嗐?br />            褰撶劧浜嗭紝浣犱篃鍙互浠涔堥兘涓嶈緗紝涓嶈繃澶ц薄榪樻槸寤鴻璁劇疆榪欎簺鍙傛暟錛屽彲浠ュ緢澶х▼搴︿笂鎻愬崌eclipse鐨勫惎鍔ㄩ熷害銆傚湪瀹夎瀹孧yEclipse鏃訛紝榪樹細(xì)鐢熸垚涓涓猠clipse.ini鐨勫浠芥枃浠訛紝榪欎釜涓嶉渶瑕侊紝鍒犳帀銆傛垜浠彲浠ヤ慨鏀逛笅eclipse.ini鏂囦歡錛屽師濮嬬殑濡備笅錛? <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #000000">-</span><span style="color: #000000">showsplash<br /> com.genuitec.myeclipse.product<br /> </span><span style="color: #000000">--</span><span style="color: #000000">launcher.XXMaxPermSize<br /> 256m<br /> </span><span style="color: #000000">-</span><span style="color: #000000">vmargs<br /> </span><span style="color: #000000">-</span><span style="color: #000000">Xms128m<br /> </span><span style="color: #000000">-</span><span style="color: #000000">Xmx512m<br /> </span><span style="color: #000000">-</span><span style="color: #000000">Dosgi.splashLocation</span><span style="color: #000000">=</span><span style="color: #000000">D:\eclipse\MyEclipse </span><span style="color: #000000">6.0</span><span style="color: #000000">.1GA\eclipse\MyEclipseSplash.bmp<br /> </span><span style="color: #000000">-</span><span style="color: #000000">Duser.language</span><span style="color: #000000">=</span><span style="color: #000000">en <br /> </span><span style="color: #000000">-</span><span style="color: #000000">XX:PermSize</span><span style="color: #000000">=</span><span style="color: #000000">128M <br /> </span><span style="color: #000000">-</span><span style="color: #000000">XX:MaxPermSize</span><span style="color: #000000">=</span><span style="color: #000000">256M</span></div>            鍏跺疄榪欎釜鏂囦歡涓虹┖閮芥病鍏崇郴錛屽ぇ璞¤瘯榪囷紝鍏ㄩ儴鍒犻櫎錛屾病鏈夐敊璇紝涓嶈繃鎴戣繕鏄緩璁ぇ瀹墮噷闈㈣嚦灝戜繚鐣欒繖浜涗笢涓?br /> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #000000">-</span><span style="color: #000000">vmargs<br /> </span><span style="color: #000000">-</span><span style="color: #000000">Xms256m<br /> </span><span style="color: #000000">-</span><span style="color: #000000">Xmx512m</span></div>            鎴戝皢128鏀規(guī)垚浜?56錛屽鏋滀綘鎯沖湪MyEclipse鎻掍歡涓敤"MyEclipse 6.0.1"蹇嵎鏂瑰紡鏉ュ惎鍔ㄧ殑璇濓紝鍙互鍐欐垚榪欐牱<br /> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #000000">-</span><span style="color: #000000">vmargs<br /> </span><span style="color: #000000">-</span><span style="color: #000000">Xms256m<br /> </span><span style="color: #000000">-</span><span style="color: #000000">Xmx512m<br /> </span><span style="color: #000000">-</span><span style="color: #000000">Dosgi.splashLocation</span><span style="color: #000000">=</span><span style="color: #000000">D:\Eclipse</span><span style="color: #000000">-</span><span style="color: #000000">3.3</span><span style="color: #000000">.</span><span style="color: #000000">1</span><span style="color: #000000">\ThirdPlugins\MyEclipse </span><span style="color: #000000">6.0</span><span style="color: #000000">.1GA\eclipse\MyEclipseSplash.bmp</span></div> <p>           鏈涓嬮潰涓琛屾槸鍚姩鏃訛紝鏄劇ずMyEclipse鐨勫浘鐗囷紝濡傛灉娌℃湁榪欏彞璇濊繍琛?MyEclipse 6.0.1"蹇嵎鏂瑰紡錛屽垯浼?xì)鏄窘C篹clipse鐨勫惎鍔ㄧ敾闈紝鍏跺疄"MyEclipse 6.0.1"蹇嵎鏂瑰紡榪樻槸榪炴帴鐫eclipse.exe榪欎釜鎵ц紼嬪簭錛屽湪"MyEclipse 6.0.1"涓婄偣鍙抽敭錛岄夋嫨灞炴э紝鍦ㄧ洰鏍囬噷灝卞彲浠ョ湅鍒般?br />     <span style="color: #0000ff"><strong>絎?姝ワ細(xì)娉ㄥ唽MyEclipse<br /> </strong><span style="color: #000000">           MyEclipse6.0鐨勬敞鍐屼竴瀹氳鏂紑緗戠粶錛屽惁鍒欒偗瀹氫笉鎴愬姛錛?br />            <span style="color: #ff0000">6.0.1GA娉ㄥ唽鐮?br />            Subscriber: administrator<br />            Subscription Code: nLR7ZL-655342-54657656405281154<br />            <span style="color: #000000">榪欓噷鏈変竴鐐瑰ぇ璞¤鎻愰啋澶у娉ㄦ剰錛屽鏋滀綘鐢?shù)鑴戜笂鐜板湪姝f湁鋴社敤鐨凪yEclipse錛屽氨鏄宸茬粡娉ㄥ唽浜嗭紝閭d箞鍦–:\Documents and Settings\"鑷繁鐨勭敤鎴峰悕" 鐩綍涓嬶紝浼?xì)鏈変竴涓?.myeclipse.properties"鏂囦歡錛岃繖鏃惰鍏堝浠芥鏂囦歡錛岀劧鍚庡垹闄ゅ畠錛屾柇寮緗戠粶錛屽啀鏉ユ敞鍐孧yEclipse6.0.1錛屾垚鍔熷悗濡備笅錛?br /> <img height="410" alt="" hspace="2" src="http://www.tkk7.com/images/blogjava_net/bolo/eclipse/7.JPG" width="523" vspace="5" border="0" /><br /> <img height="277" alt="" hspace="2" src="http://www.tkk7.com/images/blogjava_net/bolo/eclipse/6.JPG" width="720" vspace="5" border="0" /></span></span></span></span></p>     <span style="color: #0000ff"><strong>絎?姝ワ細(xì)鎵撳寘eclipse<br /> </strong><span style="color: #000000">           鍒扮幇鍦ㄦ墍鏈夌殑宸ヤ綔閮藉凡緇忓畬鎴愶紝鍚姩eclipse鐨勯熷害蹇笉蹇紵濂戒簡錛岃鍋氭渶鍚庝竴姝ユ搷浣滀簡錛屽皢"<font face="瀹嬩綋" size="2">configuration"鏂囦歡澶逛笅鐨勫唴瀹歸櫎"<font face="瀹嬩綋" size="2">config.ini</font>"鏂囦歡澶栧叏閮ㄥ垹闄わ紝鍙﹀鍐嶆妸workspace鏂囦歡澶瑰垹闄わ紝澶ц薄涓鑸細(xì)鎶妛orkspace鏀懼湪eclipse鏍圭洰褰曚笅錛屾柟娉曟槸鍦ㄧ涓嬈″惎鍔ㄩ夋嫨璺緞鏃舵妸鍓嶉潰鐨勭洰褰曢兘鍒犻櫎錛屽彧淇濈暀workspace錛堝墠闈粈涔堥兘涓嶈淇濈暀錛夈傝繖鏍鋒柟渚跨鐞嗭紝浣犺鏀懼湪鍏跺畠鐨勫湴鏂歸殢渚匡紝榪欎釜鐪嬪悇浜哄枩濂姐傚仛瀹岃繖涓ゆ涔嬪悗錛屾渶濂借繕鏄湪eclipse鐩綍涓嬪緩涓涓猼xt鏂囨湰鏂囦歡錛屾妸涓婇潰鐨勬敞鍐岀爜鏀懼埌閲岄潰錛屽彟澶栧姞涓婁竴鍙ヨ瘽:"<font face="瀹嬩綋" size="2">娉ㄥ唽鏃朵竴瀹氳鏂紑緗戠粶,鍚﹀垯鑲畾娉ㄥ唽涓嶆垚鍔?</font>"榪欐牱浠ュ悗鐢ㄦ椂錛屽彲浠ユ彁閱掕嚜宸變竴涓嬨傞噷闈㈡湁娉ㄥ唽鐮侊紝瑕佺敤鏃跺緢鏂逛究銆?br />            鍦╡clipse鏂囦歡澶逛笂鐐瑰彸閿紝閫夋嫨"娣誨姞鍒癳clipse.rar"錛岀瓑鍒板帇緙╁畬鎴愶紝鑷蟲錛岀粓浜庡ぇ鍔熷憡鎴愶紒<br />     澶у灝界鏀懼績鎸夌潃鎴戠殑鏂規(guī)硶璇曪紝澶ц薄鍓嶅墠鍚庡悗鍋氫簡涓嶄笅鍗侀亶錛屼粖澶╁張鍦ㄥ叕鍙哥殑鐢?shù)鑴戜笂鍋氫簡涓閬嶏紝鍥劇墖閮芥槸鍒氬垰鎴彇鐨勶紝鍢垮樋錛屼粖澶╄佹澘涓嶅湪錛屽ぇ璞″皬灝忕殑鏀炬澗涓涓嬶紝鍐欏啓鍗氬銆傛湁浜嗚繖涓帇緙╁寘錛屼互鍚庡ぇ瀹跺湪浣跨敤鏃跺氨浼?xì)鏂逛究寰堝锛岀壒鍒槸淇濆瓨鍒翱U誨姩紜洏閲岋紝鎯沖湪鍝敤灝卞湪鍝敤銆傚搰鍝堝搱鍝堝搱~~~~~~~~紲濆ぇ瀹跺ソ榪愶紝閮芥垚鍔熷仛鍑烘潵錛?br /> </font></span></span></span></span></span></span></span></span></span></span></span></span></span></span> <img src ="http://www.tkk7.com/mlzry0612/aggbug/221216.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/mlzry0612/" target="_blank">Daniel</a> 2008-08-11 09:58 <a href="http://www.tkk7.com/mlzry0612/articles/221216.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>JDT http://www.tkk7.com/mlzry0612/articles/214701.htmlDanielDanielMon, 14 Jul 2008 05:21:00 GMThttp://www.tkk7.com/mlzry0612/articles/214701.htmlhttp://www.tkk7.com/mlzry0612/comments/214701.htmlhttp://www.tkk7.com/mlzry0612/articles/214701.html#Feedback0http://www.tkk7.com/mlzry0612/comments/commentRss/214701.htmlhttp://www.tkk7.com/mlzry0612/services/trackbacks/214701.htmlJDT瀹為檯涓婃槸灝咼ava浠g爜鏋勫緩鎴愪竴涓熀浜嶥OM緇撴瀯鐨勬娊璞¤娉曟爲(wèi)AST錛圓bstract Syntax Tree 錛夈備唬鐮佷腑鐨勬瘡涓儴鍒嗛兘瀵瑰簲涓涓狝STNode錛岃澶氱殑ASTNode灝辨瀯鎴愪簡榪欎釜鎶借薄鐨勮娉曟爲(wèi)銆侸ava Class涓鑸搴擟ompilation Unit node錛岃鑺傜偣涔熸槸AST鏍?wèi)涓婄殑椤剁倧V傚垱寤轟竴涓狝ST濡備笅錛?

java 浠g爜
  1. ASTParser parser = ASTParser.newParser(AST.JLS3);   
  2. parser.setSource("".toCharArray());   
  3. CompilationUnit unit = (CompilationUnit) parser.createAST(null);    
  4. unit.recordModifications();   
  5. AST ast = unit.getAST();   

鍏朵腑createAST錛屽綋parse闇瑕佽緝闀挎椂闂存椂錛屽彲浠ラ噰鐢╟reateAST(new NullProgressMonitor())錛屽惁鍒欑洿鎺ヤ紶null鍗沖彲銆?/font>

recordModifications()鐢ㄤ簬璁板綍鑺傜偣鐨勫彉鍔紝姣斿淇敼銆佸垹闄ょ瓑錛屽綋闇瑕佸AST鏍?wèi)杩涜鍙樺姩鎿嶄綔鏃跺Q屽繀欏昏棰勫厛璋冪敤榪欎釜鏂規(guī)硶銆?/font>


姣旇緝閲嶈鐨勬槸錛氫竴涓狝ST鏍?wèi)涓婄殑鎵鏈夎妭鐐瑰繀欏婚兘灞炰簬璇ST銆備笉鍏佽鐩存帴灝嗗叾浠朅ST鏍?wèi)涓婄殑鑺傜傄?guī)坊鍔犺AST鏍?wèi)涓娿傚惁鍒欎細(xì)鎶涘嚭java.lang.IllegalArgumentException寮傚父銆傞』浣跨敤ASTNode.copySubtree(AST target, ASTNode node)榪斿洖涓涓洰鏍囨爲(wèi)鐨勬繁搴︽嫹璐濓紝鎵嶈兘榪涜娣誨姞鎿嶄綔銆備緥濡?

java 浠g爜
  1. ASTParser parser = ASTParser.newParser(AST.JLS3);   
  2. parser.setSource("".toCharArray());   
  3. CompilationUnit targetRoot= (CompilationUnit) parser.createAST(null);    
  4. targetRoot.recordModifications();   
  5. parser.setSource("class T{}”".toCharArray());   
  6. CompilationUnit srcRoot= (CompilationUnit) parser.createAST(null);    
  7.   
  8. //榪欐槸闈炴硶鎿嶄綔錛屼袱鑰呯殑AST婧愪笉涓鏍?  
  9. targetRoot.types().add(srcRoot.types().get(0));   
  10.   
  11. //榪欐槸鍚堟硶鎿嶄綔   
  12. targetRoot.types().add(ASTNode.copySubtree(   
  13. targetRoot.getAST(), (ASTNode) srcRoot.types().get(0)));   
  14.   
  15. //榪欐槸鍚堟硶鎿嶄綔   
  16. targetRoot.types().add(targetRoot.getAST().newTypeDeclaration());  


 

鐜版妸涓浜?Java浠g爜鐢熸垚瀵瑰簲鐨凙STNode鏂瑰紡鍒楀嚭鏉ワ紝渚涘弬鑰冿細(xì)

List 1 鐢熸垚Package
// package astexplorer;
java 浠g爜
 
  1. PackageDeclaration packageDeclaration = ast.newPackageDeclaration();  
  2. unit.setPackage(packageDeclaration);  
  3. packageDeclaration.setName(ast.newSimpleName("astexplorer")); 
List 2 鐢熸垚Import
// import org.eclipse.swt.SWT;
// import org.eclipse.swt.events.*;
// import org.eclipse.swt.graphics.*;
// import org.eclipse.swt.layout.*;
// import org.eclipse.swt.widgets.*;
java 浠g爜
 
  1. for (int i = 0; i < IMPORTS.length; ++i) {  
  2. ImportDeclaration importDeclaration = ast.newImportDeclaration();  
  3. importDeclaration.setName(ast.newName(getSimpleNames(IMPORTS[i])));  
  4. if (IMPORTS[i].indexOf("*") > 0)  
  5. importDeclaration.setOnDemand(true);  
  6. else  
  7. importDeclaration.setOnDemand(false);  
  8.   
  9. unit.imports().add(importDeclaration);  
  10. }  
List 3 鐢熸垚Class Declaration
// public class SampleComposite extends Composite 
java 浠g爜
 
  1. TypeDeclaration classType = ast.newTypeDeclaration();  
  2. classType.setInterface(false);  
  3. classType.setModifiers(Modifier.PUBLIC);  
  4. classType.setName(ast.newSimpleName("SampleComposite"));  
  5. classType.setSuperclass(ast.newSimpleName("Composite"));  
  6. unit.types().add(classType);  


List 4 鐢熸垚Constructor Declaration

// public SampleComposite(Composite parent,int style){}
java 浠g爜
 
  1. MethodDeclaration methodConstructor = ast.newMethodDeclaration();  
  2. methodConstructor.setConstructor(true);  
  3. methodConstructor.setModifiers(Modifier.PUBLIC);  
  4. methodConstructor.setName(ast.newSimpleName("SampleComposite"));  
  5. classType.bodyDeclarations().add(methodConstructor);  
  6.   
  7. // constructor parameters  
  8.   
  9. SingleVariableDeclaration variableDeclaration = ast.newSingleVariableDeclaration();  
  10. variableDeclaration.setModifiers(Modifier.NONE);  
  11. variableDeclaration.setType(ast.newSimpleType(ast.newSimpleName("Composite")));  
  12. variableDeclaration.setName(ast.newSimpleName("parent"));  
  13. methodConstructor.parameters().add(variableDeclaration);  
  14.   
  15. variableDeclaration = ast.newSingleVariableDeclaration();  
  16. variableDeclaration.setModifiers(Modifier.NONE);  
  17. variableDeclaration.setType(ast.newPrimitiveType(PrimitiveType.INT));  
  18. variableDeclaration.setName(ast.newSimpleName("style"));  
  19. methodConstructor.parameters().add(variableDeclaration);  
  20. Block constructorBlock = ast.newBlock();  
  21. methodConstructor.setBody(constructorBlock);
 List 5 鐢熸垚Spuer Invocation

// super(parent,style)
java 浠g爜
 
  1. SuperConstructorInvocation superConstructorInvocation = ast.newSuperConstructorInvocation();  
  2. constructorBlock.statements().add(superConstructorInvocation);  
  3. Expression exp = ast.newSimpleName("parent");  
  4. superConstructorInvocation.arguments().add(exp);  
  5. superConstructorInvocation.arguments().add(ast.newSimpleName("style"));  

List 6 鐢熸垚ClassInstanceCreation

// GridLayout gridLayout = new GridLayout();
java 浠g爜
 
  1. VariableDeclarationFragment vdf = ast.newVariableDeclarationFragment();  
  2. vdf.setName(ast.newSimpleName("gridLayout"));  
  3. ClassInstanceCreation cc = ast.newClassInstanceCreation();  
  4. cc.setName(ast.newSimpleName("GridLayout"));  
  5. vdf.setInitializer(cc);  
  6. VariableDeclarationStatement vds = ast.newVariableDeclarationStatement(vdf);  
  7. vds.setType(ast.newSimpleType(ast.newSimpleName("GridLayout"))); 
  8. constructBlock.statements().add(vds);

// Label label = new Label(this,SWT.NONE);
java 浠g爜
 
  1. VariableDeclarationFragment vdf = ast.newVariableDeclarationFragment();  
  2. vdf.setName(ast.newSimpleName("label"));  
  3. cc = ast.newClassInstanceCreation();  
  4. cc.setName(ast.newSimpleName("Label"));  
  5. cc.arguments().add(ast.newThisExpression());  
  6. cc.arguments().add(ast.newName(getSimpleNames("SWT.NONE")));  
  7. vdf.setInitializer(cc); 
  8. VariableDeclarationStatement vds = ast.newVariableDeclarationStatement(vdf);  
  9. vds.setType(ast.newSimpleType(ast.newSimpleName("Label")));
  10. constructBlock.statements().add(vds);

List 7鐢熸垚MethodInvocation

// setLayout(gridLayout);
java 浠g爜
 
  1. MethodInvocation mi = ast.newMethodInvocation();  
  2. mi.setName(ast.newSimpleName("setLayout"));  
  3. mi.arguments().add(ast.newSimpleName("gridLayout")); 
  4. constructorBlock.statements().add(ast.newExpressionStatement(mi));
// label.setText("Press the button to close:");
         java 浠g爜
  1. mi = ast.newMethodInvocation();   
  2. mi.setExpression(ast.newSimpleName("label"));   
  3. mi.setName(ast.newSimpleName("setText"));   
  4. StringLiteral sl = ast.newStringLiteral();   
  5. sl.setLiteralValue("Press the button to close:");   
  6. mi.arguments().add(sl);   
  7. constructorBlock.statements().add(ast.newExpressionStatement(mi));  
// label.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_CENTER));
           java 浠g爜
  1. mi = ast.newMethodInvocation();   
  2. mi.setExpression(ast.newSimpleName("label"));   
  3. mi.setName(ast.newSimpleName("setLayoutData"));   
  4.   
  5. cc = ast.newClassInstanceCreation();   
  6. cc.setName(ast.newSimpleName("GridData"));   
  7. cc.arguments().add(ast.newName(getSimpleNames("GridData.HORIZONTAL_ALIGN_CENTER")));   
  8. mi.arguments().add(cc);   
  9. constructorBlock.statements().add(ast.newExpressionStatement(mi));  

 // Button button = new Button(this,SWT.PUSH);

java 浠g爜
  1. vdf = ast.newVariableDeclarationFragment();   
  2. vdf.setName(ast.newSimpleName("button"));   
  3. vds = ast.newVariableDeclarationStatement(vdf);   
  4. vds.setType(ast.newSimpleType(ast.newSimpleName("Button")));   
  5. constructorBlock.statements().add(vds);   
  6.   
  7. cc = ast.newClassInstanceCreation();   
  8. cc.setName(ast.newSimpleName("Button"));   
  9. vdf.setInitializer(cc);   
  10. cc.arguments().add(ast.newThisExpression());   
  11. cc.arguments().add(ast.newName(getSimpleNames("SWT.PUSH")));  

// button.addSelectionListener(new SelectionAdapter() {});

    java 浠g爜

  1. mi = ast.newMethodInvocation();   
  2. constructorBlock.statements().add(ast.newExpressionStatement(mi));   
  3. mi.setExpression(ast.newSimpleName("button"));   
  4. mi.setName(ast.newSimpleName("addSelectionListener"));   
  5.   
  6. ClassInstanceCreation ci = ast.newClassInstanceCreation();   
  7. ci.setName(ast.newSimpleName("SelectionAdapter"));   
  8. mi.arguments().add(ci);   
  9. AnonymousClassDeclaration cd = ast.newAnonymousClassDeclaration();   
  10. ci.setAnonymousClassDeclaration(cd); 






















// public void setup(){super.setUp()}
      1. MethodDeclaration methodConstructor = ast.newMethodDeclaration();
                methodConstructor.modifiers().add(
                        ast.newModifier(ModifierKeyword.PUBLIC_KEYWORD));
                methodConstructor.setName(ast.newSimpleName("setUp"));
  1.         Block constructorBlock = ast.newBlock();
            methodConstructor.setBody(constructorBlock);
  2.         SuperMethodInvocation smi = ast.newSuperMethodInvocation();
            smi.setName(ast.newSimpleName("setUp"));
            ExpressionStatement es = ast.newExpressionStatement(smi);
            constructorBlock.statements().add(es);
  3.         // set exception
            List targetExNames = methodConstructor.thrownExceptions();
            Name targetExName = ast.newName(Exception.class.getName());
            targetExNames.add(targetExName);
  4.         methodConstructor.setJavadoc(JavaDocHelper.getJavaDoc(ast,
                    JavaDocHelper.setUpDoc, null, null));
            classType.bodyDeclarations().add(methodConstructor);


Daniel 2008-07-14 13:21 鍙戣〃璇勮
]]>
Eclipse Plugin Develop , Open preference viewhttp://www.tkk7.com/mlzry0612/articles/202339.htmlDanielDanielFri, 23 May 2008 02:52:00 GMThttp://www.tkk7.com/mlzry0612/articles/202339.htmlhttp://www.tkk7.com/mlzry0612/comments/202339.htmlhttp://www.tkk7.com/mlzry0612/articles/202339.html#Feedback0http://www.tkk7.com/mlzry0612/comments/commentRss/202339.htmlhttp://www.tkk7.com/mlzry0612/services/trackbacks/202339.html鏇劇粡寰堣牏鐨勮嚜宸卞幓鍐欎簡涓涓狣ialog鍘誨寘瑁卲reference View.
浠g爜濡備笅 鍦═S1鏂規(guī)硶涓?

package com.wipro.testtools.ui.internal.action;

import java.util.Iterator;

import org.eclipse.ui.IPerspectiveDescriptor;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.IWorkbenchWindowActionDelegate;
import org.eclipse.ui.WorkbenchException;
import org.eclipse.ui.internal.OpenPreferencesAction;
import org.eclipse.ui.internal.Workbench;
import org.eclipse.ui.internal.WorkbenchPlugin;
import org.eclipse.ui.internal.actions.OpenPerspectiveDialogAction;
import org.eclipse.ui.internal.dialogs.SelectPerspectiveDialog;
import org.eclipse.ui.dialogs.PreferencesUtil;
import org.eclipse.ui.help.WorkbenchHelp;
import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.jface.action.IAction;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.window.Window;
import org.eclipse.jface.dialogs.TitleAreaDialog;
import org.eclipse.jface.preference.IPreferenceNode;
import org.eclipse.jface.preference.PreferenceManager;
import org.eclipse.jface.preference.IPreferencePage;
import org.eclipse.jface.preference.PreferenceDialog;
import org.eclipse.swt.widgets.Shell;

public class OpenPreferencePages implements IWorkbenchWindowActionDelegate {
    public OpenPreferencePages() {
        super();
    }

    private IWorkbenchWindow workbenchWindow;

    public void dispose() {
    }

    public void init(IWorkbenchWindow window) {
        workbenchWindow = window;
    }

    public void run(IAction action) {

        ts2();
    }

    private void ts2() {
        // OpenPreferencesAction action = new OpenPreferencesAction();
        // OpenPerspectiveDialogAction action = new
        // OpenPerspectiveDialogAction(null);
        // action.run();
        String ourPreferenceDialog = "com.wipro.testtools.ui.preferences.SamplePreferencePage";
        PreferenceDialog dialog = PreferencesUtil.createPreferenceDialogOn(null, ourPreferenceDialog, new String[]{ourPreferenceDialog}, null);
       
        dialog.open();

    }

    /**
     *
     */
    private void ts1() {
        String PreferenceNodeId = "org.eclipse.ui.preferencePages.Workbench";
        PreferenceDialogWrapper dialog = null;
        PreferenceManager manager = WorkbenchPlugin.getDefault()
                .getPreferenceManager();
        if (manager != null) {
            dialog = new PreferenceDialogWrapper(getShell(), manager);
            dialog.create();
            // WorkbenchHelp.setHelp(dialog.getShell(),
            // IHelpContextIds.PREFERENCE_DIALOG);

            for (Iterator iterator = manager.getElements(
                    PreferenceManager.PRE_ORDER).iterator(); iterator.hasNext();) {
                IPreferenceNode node = (IPreferenceNode) iterator.next();
                System.out.println(node.getId());
                if (node.getId().equals(PreferenceNodeId)) {
                    dialog.showPage(node);
                }
            }
            dialog.open();
        }
    }

    public void selectionChanged(IAction action, ISelection selection) {
    }

    private Shell getShell() {
        return DialogCheck.getShell();
    }

}

class PreferenceDialogWrapper extends PreferenceDialog {
    public PreferenceDialogWrapper(Shell parentShell, PreferenceManager manager) {
        super(parentShell, manager);
        super.setSelectedNodePreference("PreferenceNodeId");// this is added
    }

    public boolean showPage(IPreferenceNode node) {
        return super.showPage(node);
    }

    public IPreferencePage getPage(IPreferenceNode node) {
        if (node == null)
            return null;

        if (node.getPage() == null)
            node.createPage();

        if (node.getPage() == null)
            return null;

        return node.getPage();
    }
}

class DialogCheck {
    private DialogCheck() {
    }

    private static VerifyDialog _verifyDialog;

    public static Shell getShell() {
        Shell shell = WorkbenchPlugin.getDefault().getWorkbench()
                .getActiveWorkbenchWindow().getShell();
        _verifyDialog = new VerifyDialog(shell);
        _verifyDialog.create();
        return _verifyDialog.getShell();
    }

}

class VerifyDialog extends TitleAreaDialog {
    public VerifyDialog(Shell parent) {
        super(parent);
    }
}


鍏跺疄eclipse鎻愪緵浜嗚繖鏍風(fēng)殑API: See the TS2 Method:
Just two line codes. :(



Daniel 2008-05-23 10:52 鍙戣〃璇勮
]]>
鎺ㄨ崘鍑犱釜Eclipse甯哥敤緇忓吀鎻掍歡 http://www.tkk7.com/mlzry0612/articles/45286.htmlDanielDanielTue, 09 May 2006 13:47:00 GMThttp://www.tkk7.com/mlzry0612/articles/45286.htmlhttp://www.tkk7.com/mlzry0612/comments/45286.htmlhttp://www.tkk7.com/mlzry0612/articles/45286.html#Feedback0http://www.tkk7.com/mlzry0612/comments/commentRss/45286.htmlhttp://www.tkk7.com/mlzry0612/services/trackbacks/45286.html

CSS鎻掍歡錛?a >http://csseditor.sourceforge.net

JS鍜孉S鎻掍歡錛?a >http://sourceforge.net/projects/jseditor

XML鎻掍歡錛?a >http://xmlbuddy.com

姝e垯琛ㄨ揪寮忔祴璇曟彃浠訛細(xì)http://brosinski.com/stephan/archives/000028.php

XPath嫻嬭瘯鎻掍歡錛?a >http://www.purpletech.com/xpe/index.jsp

鏇村Eclipse鎻掍歡錛?a >http://eclipse-plugins.2y.net/eclipse/index.jsp



Daniel 2006-05-09 21:47 鍙戣〃璇勮
]]>
Eclipse鐨凢indBugs鎻掍歡 http://www.tkk7.com/mlzry0612/articles/44930.htmlDanielDanielSun, 07 May 2006 15:53:00 GMThttp://www.tkk7.com/mlzry0612/articles/44930.htmlhttp://www.tkk7.com/mlzry0612/comments/44930.htmlhttp://www.tkk7.com/mlzry0612/articles/44930.html#Feedback0http://www.tkk7.com/mlzry0612/comments/commentRss/44930.htmlhttp://www.tkk7.com/mlzry0612/services/trackbacks/44930.html Eclipse鐨凢indBugs鎻掍歡

闂鎻愬嚭錛?

褰撴垜浠紪鍐欏畬浠g爜錛屽仛瀹屽崟鍏冩祴璇曠瓑鍚勭嫻嬭瘯鍚庡氨鎻愪氦姝e紡榪愯錛屽彧鑳界敱榪愯鐨勭郴緇熸潵媯嫻嬫垜浠唬鐮佹槸鍚︽湁闂浜嗭紝浠g爜涓殣钘忕殑閿欒鍦ㄧ郴緇熻繍琛岀殑榪囩▼涓鍙戠幇鍚庯紝鐒跺悗鍐嶆潵榪涜鐩稿簲鐨勪慨鏀癸紝閭d箞鍚庢湡淇敼鐨勪唬浠峰氨鐩稿綋楂樹簡銆?/p>

瑙e喅鏂規(guī)硶錛?/b>

鐜板湪鏈夊緢澶欽ava浠g爜鍒嗘瀽宸ュ叿錛孎indBugs涓紑婧愰」鐩綋涓殑涓涓紝瀹冨彲浠ュ府浣犳壘鍒頒唬鐮佷腑闅愯棌鐨勪竴浜涢敊璇紝鎻愬崌浣犵殑浠g爜鑳藉姏涓庣郴緇熷畨鍏ㄥ彲闈犳с?/p>

瀹夎

JDK錛?.5.0 浠巋ttp://java.sun.com涓婂幓涓嬭澆瀹夎

Eclipse錛?.1.1 浠巋ttp://www.eclipse.org 涓婂幓涓嬭澆瑙e帇

FindBugs錛?.9.4 浠巋ttp://findbugs.sourceforge.net/

瀹樻柟鐨勬枃妗?http://findbugs.sourceforge.net/manual/

Eclipse plugin for FindBugs version 0.0.17 浠?http://findbugs.sourceforge.net/downloads.html 涓嬭澆

鎻掍歡綆$悊鎶宸?/b>

鎻愮ず錛氭柊涓嬭澆鐨勬彃浠禤lugIn涓瀹氫笉瑕侀兘鏀懼湪鍘熷鐨凟clipse鐩綍涓嬪幓銆?/p>

  1. 鍓嶆彁鏄綘宸茬粡瀹夎濂戒簡Eclipse宸ュ叿浜嗭紝姣斿瀹夎鍦‥:\OpenSource\Eclipse\鐩綍涓嬶紝浠ヤ笅榪欎釜鐩綍浠?ECLIPSE_HOME%鏉ヨ繘琛岃〃紺猴紱
  2. 姝ゆ椂榛樿鐨勬彃浠舵槸鍦?ECLIPSE_HOME%\plugins鐩綍涓殑錛?
  3. 鍦?ECLIPSE_HOME%涓嬪緩绔嬩竴涓狿lugInsNew鐨勭洰褰曪紱

    姣斿錛欵:\OpenSource\Eclipse\PlugInsNew\

  4. 浣犱笅杞戒簡涓柊鐨勬彃浠訛紝姣斿鍙仛錛歑YZ

    閭d箞灝卞湪%ECLIPSE_HOME%\PlugInsNew\鐩綍涓嬪緩绔媂YZ鐩綍錛岀洰褰曢噷闈㈡槸eclipse鐩綍錛宔clipse鐩綍鍖呭惈鏈塮eatures涓巔lugins涓や釜瀛愮洰褰曪紱緇撴瀯濡備笅鍥炬墍紺猴細(xì)

  5. 鎶婁笅杞界殑鏂版彃浠剁殑鏂囦歡鏀懼湪浠ヤ笅鐩稿簲鐩綍涓?

    %ECLIPSE_HOME%\PlugInsNew\XYZ\eclipse\features

    %ECLIPSE_HOME%\PlugInsNew\ XYZ\eclipse\plugins

  6. 寤虹珛鐩稿叧鐨?link鐨勬枃浠?

    鐒跺悗鍦?ECLIPSE_HOME%\links鐩綍閲屽緩绔嬩竴涓猉YZ.link鐨勬枃浠?

    鍐呭濡傛槸錛歱ath=E:/OpenSource/Eclipse/PlugInsNew/XYZ灝變竴琛岃繖鏍風(fēng)殑璺緞鎸囩ず鑰屽凡銆?

    褰撶劧錛岄噰鐢ㄧ浉瀵硅礬寰勬潵琛ㄧず鍙兘鏇寸洿瑙備竴浜涳紝鏂逛究榪涜鏂囦歡鏁翠綋縐誨姩鍜屽皬緇勫叏閮ㄦ垚鍛樼殑鍏變韓鍛藉悕鐢紝鐪佸緱縐誨姩鍚庤鏀瑰姩Link鏂囦歡閲岀殑緇濆璺緞鑰岃垂蹇冭垂鍔涖傜洿鎺ユ嫹璐濊繃鍘誨氨鍙互浣跨敤銆?

    鍗砐YZ.link鏂囦歡鐨勫唴瀹瑰鏄細(xì)path=../PlugInsNew/XYZ

    榪欐牱錛屽鏋滀綘涓嬭澆浜嗗涓彃浠跺氨鍙互濡傛硶鐐埗寤虹珛澶氫釜Link鏂囦歡錛屾兂鍔犺澆鍝釜鎻掍歡灝辨妸鍝釜鎻掍歡鐨凩ink鏂囦歡鏀懼埌%ECLIPSE_HOME%\links鐨勭洰褰曚腑鍗沖彲錛屼嬌鐢ㄤ笌綆$悊閮藉緢鏂逛究錛屽緩璁崈涓囦笉瑕佹斁鍦ㄩ粯璁ょ殑瀹夎鐩綍涓紱

    濡傛灉浣犵殑%ECLIPSE_HOME%涓庢涓嶅悓錛岃淇敼XYZ.link鏂囦歡閲岀殑璺緞

  7. 鍒犻櫎錛屽叧闂璄clipse

    鍒犻櫎%ECLIPSE_HOME%\links\XYZ.link鏂囦歡鍗沖彲

    鍒犻櫎%ECLIPSE_HOME%\PlugInsNew\XYZ鏁翠釜鐩綍鍙婃枃浠?/p>

  8. 閲嶆柊鍚姩Eclipse鍗沖彲

浣跨敤

閲嶆柊鍚姩Eclipse鍚庯紝鍦℉elp => About Eclipse SDK => Plug-in Details浣犲彲浠ョ湅鍒扮敱鈥淔indBugs Project鈥濇彁渚涚殑鈥淔indBugs Plug-in鈥濈増鏈?.0.17鎻掍歡錛屽涓嬪浘鎵紺猴細(xì)

FindBugs鐨勪嬌鐢ㄦ柟娉?/b>

FindBugs鏄竴涓彲浠ュ湪Java紼嬪簭涓彂鐜癇ugs鐨勭▼搴忋?

瀹冩槸涓撻棬鐢ㄦ潵瀵繪壘澶勪簬鈥淏ug Patterns鈥濆垪琛ㄤ腑鐨勪唬鐮佺殑銆?

Bug Patterns鎸囧緢鏈夊彲鑳芥槸閿欒鐨勪唬鐮佺殑瀹炰緥銆?/p>

鐩墠FindBugs鏈楂樼増鏈?.9.4錛屼笉榪囨洿鏂伴熷害寰堝揩鐨勶紝浣犲簲褰撶粡甯鎬笂鍘葷湅鐪嬫槸鍚︽湁鏂扮増鏈彂甯冦侲clipse plugin for FindBugs鏈楂樼増鏈?.0.17銆?/p>

緋葷粺瑕佹眰

浣跨敤FindBugs鑷沖皯闇瑕丣DK1.4.0浠ヤ笂鐗堟湰錛孎indBugs鏄鉤鍙扮嫭绔嬬殑錛屽彲浠ヨ繍琛屼簬GNU/Linux銆乄indows銆丮acOS X絳夊鉤鍙頒笂銆?/p>

榪愯FindBugs鑷沖皯闇瑕佹湁256 MB鍐呭瓨錛屽鏋滀綘瑕佸垎鏋愪竴涓緢澶х殑欏圭洰錛岄偅灝遍渶瑕佹洿鍔犲鐨勫唴瀛樹簡銆?/p>

FindBugs鐙珛榪愯鍜屼笌Ant緇撳悎鐨勮緇嗘搷浣滃氨涓嶄粙緇嶄簡錛屽彲浠ョ湅瀹樻柟鐨勬枃妗ttp://findbugs.sourceforge.net/manual/

鐙珛榪愯鐨勬晥鏋滃浘濡備笅錛?/p>

鎵撳紑Bug Details瑙嗗浘

Windows => Show View => Other鈥?=> FindBugs => BugDetails

鍦≒ackage Explorer鎴朜avigator瑙嗗浘涓紝閫変腑浣犵殑Java欏圭洰錛屽彸閿紝鍙互鐪嬪埌鈥淔ind Bugs鈥濊彍鍗曢」錛屽瓙鑿滃崟欏歸噷鏈夆淔ind Bugs鈥濆拰鈥淐lear Bug Markers鈥濅袱欏瑰唴瀹癸紝濡備笅鍥炬墍紺猴細(xì)

鎴戜滑寤虹珛涓涓畝鍗曠殑嫻嬭瘯鏂囦歡Test.java 鍐呭濡備笅錛?

public class Test { private String[] name; public String[] getName() { return name; } public void setName(String[] name) { this.name = name; } }

鎴戜滑鐐逛腑鈥淔ind Bugs鈥濓紝榪愯鏃朵細(xì)鍑虹幇濡備笅榪涘害妗嗭細(xì)

榪愯緇撴潫鍚庡彲浠ュ湪Problems涓湅鍒板鍔犱簡濡備笅鐨勮鍛婁俊鎭唴瀹?/p>

FindBugs榪愯鍚庣殑璀﹀憡淇℃伅鍐呭涓嶄粎鍦≒roblems瑙嗗浘涓樉紺猴紝鑰屼笖灝嗘爣璁板湪婧愪唬鐮佹爣璁版涓紝鍦ㄦ簮浠g爜緙栬緫鍣ㄤ腑鎴戜滑鍙互鐪嬪埌璀﹀憡鏍囪瘑錛屽涓嬪浘錛?

褰撳厜鏍囨寚鍚戜綘鐨勮鍛婁俊鎭殑浠g爜涓婇潰鏃訛紝灝變細(xì)鏈夌浉搴旂殑閿欒鎻愮ず淇℃伅錛屼笌Eclipse鏈韓鐨勯敊璇垨璀﹀憡淇℃伅鎻愮ず綾諱技銆?

閫変腑Problems瑙嗗浘閲屽嚭鐜扮殑鐩稿簲闂錛屽氨浼?xì)鍦ㄤ唬鐮伨~栬緫鍣ㄩ噷鍒囨崲鍒扮浉搴旂殑浠g爜涓婂幓錛屾柟渚挎牴鎹浉搴旂殑鎻愮ず淇℃伅榪涜浠g爜鐨勪慨鏀廣?

鍦≒roblems瑙嗗浘閲岋紝閫変腑鐩稿簲鐨勯棶棰樻潯鐩紝鍙抽敭錛屽湪寮瑰嚭鐨勮彍鍗曚腑錛屽彲浠ョ湅鍒扳淪how Bug Details鈥濓紝濡備笅鍥炬墍紺猴細(xì)

鐐逛腑瀹冿紝浼?xì)鍒囨崲鍒癇ug Details瑙嗗浘涓婂幓錛屾樉紺烘洿鍔犺緇嗙殑鎻愮ず淇℃伅銆?/p>

褰撶劧錛屽湪浠g爜緙栬緫紿楀彛涓紝鐐瑰嚮甯︽湁璀﹀憡鎻愮ず淇℃伅鐨勫浘鏍囨椂錛屼篃浼?xì)鑷姩鍒囨崲鍒癇ud Details紿楀彛鍘伙紝鏌ョ湅璇︾粏鐨勮鍛婁俊鎭紝濡備笅鍥炬墍紺恒?/p>

鏍規(guī)嵁榪欓噷璇︾粏鐨勪俊鎭紝浣犲彲浠ュ緱鍒癋indBugs涓轟粈涔堜細(xì)瀵逛綘鐨勪唬鐮佹姤璀﹀憡淇℃伅錛屽強鐩稿簲鐨勫鐞嗗姙娉曪紝鏍規(guī)嵁瀹冪殑鎻愮ず錛屼綘鍙互蹇熸柟渚垮湴榪涜浠g爜淇敼銆?/p>

鏍規(guī)嵁鎻愮ず錛屾垜浠皢浠g爜淇敼鎴愬涓嬶紝鍐嶈繍琛屽氨涓嶄細(xì)鎶ユ湁璀﹀憡淇℃伅浜嗐?/p>

public class Test { private String[] name; public String[] getName() { String[] temp = name; return temp; } public void setName(String[] name) { String[] temp = name; this.name = temp; } } 閰嶇疆FindBugs

閫夋嫨浣犵殑欏圭洰錛屽彸閿?=> Properties => FindBugs =>

鍙互閰嶇疆鐨勪俊鎭寘鎷涓婂浘鎵紺虹殑鍥涗釜閫夐」鐨勭浉鍏寵緗細(xì)

  1. Run FindBugs Automatically寮鍏?/strong>

    褰撴欏歸変腑鍚庯紝FindBugs灝嗕細(xì)鍦ㄤ綘淇敼Java綾繪椂鑷姩榪愯錛屽浣犺緗簡Eclipse鑷姩緙栬瘧寮鍏沖悗錛屽綋浣犱慨鏀瑰畬Java鏂囦歡淇濆瓨錛孎indBugs灝變細(xì)榪愯錛屽茍灝嗙浉搴旂殑淇℃伅鏄劇ず鍑烘潵銆?

    褰撴欏規(guī)病鏈夐変腑錛屼綘鍙兘姣忔鍦ㄩ渶瑕佺殑鏃跺欒嚜宸卞幓榪愯FindBugs鏉ユ鏌ヤ綘鐨勪唬鐮併?

  2. Minimum priority to report閫夋嫨欏?/strong>

    榪欎釜閫夋嫨欏規(guī)槸璁╀綘閫夋嫨鍝釜綰у埆鐨勪俊鎭繘琛屾樉紺猴紝鏈塋ow銆丮edium銆丠igh涓変釜閫夋嫨欏瑰彲浠ラ夋嫨錛屽緢綾諱技浜嶭og4J鐨勭駭鍒緗暒銆?姣斿錛?

    浣犻夋嫨浜咹igh閫夋嫨欏癸紝閭d箞鍙湁鏄疕igh綰у埆鐨勬彁紺轟俊鎭墠浼?xì)琚槃·恒?

    浣犻夋嫨浜哅edium閫夋嫨欏癸紝閭d箞鍙湁鏄疢edium鍜孒igh綰у埆鐨勬彁紺轟俊鎭墠浼?xì)琚槃·恒?

    浣犻夋嫨浜哃ow閫夋嫨欏癸紝閭d箞鎵鏈夌駭鍒殑鎻愮ず淇℃伅閮戒細(xì)琚樉紺恒?/p>

  3. Enable bug categories閫夋嫨欏?/strong>

    鍦ㄨ繖閲屾槸涓浜涙樉紺築ug鍒嗙被鐨勯夋嫨錛?

    Correctness鍏充簬浠g爜姝g‘鎬х浉鍏蟲柟闈㈢殑

    Performance鍏充簬浠g爜鎬ц兘鐩稿叧鏂歸潰鐨?

    Internationalization鍏充簬浠g爜鍥介檯鍖栫浉鍏蟲柟闈㈢殑

    Multithreaded correctness鍏充簬浠g爜澶氱嚎紼嬫紜х浉鍏蟲柟闈㈢殑

    Style鍏充簬浠g爜鏍峰紡鐩稿叧鏂歸潰鐨?/p>

    Malicious code vulnerability鍏充簬鎭舵剰鐮村潖浠g爜鐩稿叧鏂歸潰鐨?

    姣斿錛氬鏋滀綘鎶奡tyle鐨勬鏌ユ鍘繪帀涓嶉夋嫨涓畠錛岄偅涔堜笌Style鍒嗙被鐩稿叧鐨勮鍛婁俊鎭氨涓嶄細(xì)鏄劇ず浜嗐傚叾瀹冪殑綾諱技銆?/p>

  4. Select bug patterns to check for閫夋嫨欏?/strong>

    鍦ㄨ繖閲屼綘鍙互閫夋嫨鎵瑕佽繘琛屾鏌ョ殑鐩稿叧鐨凚ug Pattern鏉$洰

    鍙互浠嶣ug codes銆丏etector name銆丏etector description涓湅鍒扮浉搴旂殑鏄媯鏌ュ摢浜涙柟闈㈢殑鍐呭錛屼綘鍙互鏍規(guī)嵁闇瑕侀夋嫨鎴栧幓鎺夌浉搴旂殑 媯鏌ユ潯浠躲?

鎬葷粨

姝ゆ彃浠剁殑鍔熻兘寰堜笉閿欙紝鍙互甯姪鎴戜滑鎻愬崌Java浠g爜鐨勭紪鍐欒兘鍔涳紝鍐欏嚭鏇村姞瀹夊叏鍙潬鐨勪唬鐮併傚緩璁嬌鐢ㄦ垨鍔犲湪Ant閲岃繘琛屾寔緇瀯寤恒傜幇鍦紝浣犲彲浠ラ┈涓婃嬁鍑轟綘宸茬粡寮鍙戠殑涓涓」鐩紝媯鏌ヤ竴涓嬩綘鐨勪唬鐮佹湁娌℃湁闂浜嗐?/p>

Daniel 2006-05-07 23:53 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 性xxxx视频免费播放直播| 亚洲图片激情小说| 亚洲综合在线另类色区奇米| 亚洲成年人免费网站| 亚洲欧洲日韩不卡| 亚洲AV无码久久精品狠狠爱浪潮| 国产黄色一级毛片亚洲黄片大全| 亚洲精品成a人在线观看| 亚洲毛片不卡av在线播放一区| 亚洲av再在线观看| 亚洲精品国精品久久99热| 久久久久亚洲精品无码网址| 亚洲伊人久久大香线蕉综合图片| 亚洲综合日韩久久成人AV| 亚洲午夜福利AV一区二区无码| 久久精品国产精品亚洲艾草网| 亚洲成AV人片一区二区| 亚洲人成影院在线| 亚洲欧洲日韩国产| 国产精品亚洲综合久久| 亚洲欧美中文日韩视频| 美女羞羞视频免费网站| 亚洲一区二区三区免费| 日本中文字幕免费高清视频| 67pao强力打造国产免费| 国产成在线观看免费视频| 日本免费人成视频播放| 亚洲国产成人久久综合区| 国产亚洲精品一品区99热| 亚洲五月六月丁香激情| 77777亚洲午夜久久多喷| 欧美激情综合亚洲一二区| 一个人免费观看视频在线中文 | 色偷偷亚洲男人天堂| 中中文字幕亚洲无线码| 亚洲国产欧美日韩精品一区二区三区| 最新亚洲人成无码网站| 中文字幕免费播放| 色影音免费色资源| 免费又黄又爽的视频| 亚洲国产美国国产综合一区二区|