2010-05-04 26 views
7

Tôi đang cố gắng thực thi 'OrganizeImports' theo lập trình trên các tệp mà tôi đang chỉnh sửa theo chương trình. Mã của tôi trông như thế này:Gọi tổ chức nhập khẩu theo chương trình

final ICommandService cmdService = (ICommandService)PlatformUI.getWorkbench().getService (ICommandService.class); 
    if (cmdService != null) { 
     final Command cmd = cmdService.getCommand(IJavaEditorActionDefinitionIds.ORGANIZE_IMPORTS); 
     final ExecutionEvent execEvt = new ExecutionEvent(cmd, Collections.EMPTY_MAP, compileationUnit, null); 

     PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(); 
     ResourcesPlugin.getWorkspace(). 

     Display.getDefault().syncExec(new Runnable() { 
      @Override 
      public void run() { 
       try { 
        //cmd.executeWithChecks(execEvt); 
        cmd.execute(execEvt); 
       } catch (Exception e) { 
        getLogger().severe("organize imports failed: " + e.getMessage()); 
       } 
      } 

Vấn đề của tôi là OrganizeImportsAction thực thi trên các lựa chọn hiện tại mà không phải là giống như các đơn vị biên soạn tôi chỉnh sửa. Tôi muốn thiết lập các lựa chọn lập trình trên đơn vị biên dịch nhưng tôi không biết làm thế nào để làm điều đó. Hoặc có thể có một cách khác để kích hoạt OrganizeImports.

cảm ơn, stefan

Trả lời

Các vấn đề liên quan