ÆíÁý±âÀÇ º¹»ç ÀÛ¾÷ »ç¿ë

JDT ÄÚ¾î Ç÷¯±×ÀÎÀº Java ¿ä¼Ò¸¦ ÇÁ·Î±×·¡¹ÖÇÏ¿© ÀÛ¼º, »èÁ¦, ¼öÁ¤Çϵµ·Ï ÇÏ´Â API¸¦ Á¦°øÇÕ´Ï´Ù. JDT Äھ Á¦°øÇÏ´Â API¿¡ ´ëÇÑ ¼Ò°³´Â Java ÄÚµå Á¶ÀÛÀ» ÂüÁ¶ÇϽʽÿÀ.   

Java ¸ðµ¨¿¡¼­ Áß¿äÇÑ °³³äÀº "ÀÛ¾÷ »çº»"(IWorkingCopy)À̶ó°í ÇÏ´Â ÄÄÆÄÀÏ ´ÜÀ§ÀÇ Àθ޸𸮠»çº»À» »ç¿ëÇÏ´Â °ÍÀÔ´Ï´Ù.  ÀÛ¾÷ »çº»À» »ç¿ëÇÏ¸é ±âº» ÀÚ¿ø º¯°æ»çÇ×À» È®¾àÇϱâ Àü¿¡ ÄÄÆÄÀÏ ´ÜÀ§¸¦ ÇÁ·Î±×·¥¿¡ µû¶ó º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù.

Java »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º¿¡¼­, º´·Ä °³³äÀº »ç¿ëÀÚ°¡ ÆÄÀÏ ½Ã½ºÅÛ¿¡ ÀÛ¾÷ »çº»À» È®¾àÇϱâ Àü¿¡ ÀÚ¿øÀ» ±¤¹üÀ§ÇÏ°Ô ÆíÁýÇÒ ¼ö ÀÖµµ·Ï ÇÏ´Â °ÍÀÔ´Ï´Ù.   »çº»À» »ç¿ëÇϸé UI ±¸ÇöÀ» ÅëÇØ »ç¿ëÀÚ°¡ Java ÆíÁý±âÀÇ ÄÁÅÙÃ÷¸¦ µð½ºÅ©¿¡ ÀúÀåÇϰųª ´Ù½Ã ¿ø·¡ÀÇ ÄÁÅÙÃ÷·Î µÇµ¹¸± ¼ö ÀÖ½À´Ï´Ù. 

IWorkingCopyManager´Â ÆíÁý±â ³»¿¡¼­ »ç¿ëµÇ´Â Java ÄÄÆÄÀÏ ´ÜÀ§ÀÇ º¹»ç ÀÛ¾÷À» °ü¸®ÇÕ´Ï´Ù.   ÆíÁý±â¿¡¼­ ÄÄÆÄÀÏ ´ÜÀ§¸¦ ¼öÁ¤ÇÏ·Á°í ÇÒ ¶§, ÆíÁý±âÀÇ ÀÔ·Â ¿ä¼Ò¸¦ ÀÛ¾÷ »çº» °ü¸®ÀÚ¿¡ ¿¬°áÇÏ¿© ÀÛ¾÷ »çº»À» È®º¸ÇØ¾ß ÇÕ´Ï´Ù. ÀÛ¾÷ »çº»¿¡¼­ ÆíÁýÀ» ¼öÇàÇÕ´Ï´Ù. 

´ÙÀ½Àº ÄÄÆÄÀÏ ´ÜÀ§ ÆíÁý±â¿¡¼­ ÀÛ¾÷ »çº» °ü¸®ÀÚ¸¦ »ç¿ëÇÏ´Â °ÍÀ» º¸¿©ÁÖ´Â ÄÚµå ½º´ÏÆêÀÔ´Ï´Ù.

    void modifyCompilationUnit(ICompilationUnit cunit) throws PartInitException, CoreException {
        IEditorPart editor= JavaUI.openInEditor(cunit);
        IEditorInput input= editor.getEditorInput();
        IWorkingCopyManager manager= JavaUI.getWorkingCopyManager();
        manager.connect(input);
        try {
            ICompilationUnit workingCopy= manager.getWorkingCopy(input);
            // do the modifications on workingCopy using the normal JDT Core API.
        } finally {
            manager.disconnect(input);
        }
        // either keep the editor dirty or use editor.doSave(IProgressMonitor monitor)
        // to save the changes programmatically.
    }

Copyright IBM Corporation and others 2000, 2003. All Rights Reserved.