2016-10-03 3 views
0

プロジェクト名をリファクタリングすることはできますが、プログラマチックな方法でeclipseでファイル名のリファクタリングに関するヘルプが必要です。このフォルダの下にxxx.zzzファイルがあり、このファイルの名前を変更/リファクタリングするフォルダがあります。Eclipseでプロジェクト内のファイル名をリファクタリングする方法

種類は、ファイルを右クリック選択し、リファクタリングと、ご希望のファイル名を入力してください

答えて

0

について。参照と同様に名前変数を更新することが追加で求められます。それらの両方(推奨)をチェックして、あなたのファイルとそのすべての参照は、ファイルがクラスファイルである場合、あなたは以下のコードを試すことができます

+0

私はそれをプログラム的に行う必要があります。私は移動方法があることを見た。しかし、私はそれを行う際に例外があります。 –

+0

ファイルをクリックするか、ファイルを開く(Javaファイルの場合)。Alt + Shit + Rを押すと、ファイル名がボックス化され、ファイル名を編集し、Enterキーを押して変更を受け入れる。 – Dineshmohan

+0

@ilkeMuhtaroglu:Was 'IResource.move()'メソッドを使用しようとしましたか?どんな例外がありましたか? – HighCommander4

0

を更新されます。

RefactoringContribution contribution = RefactoringCore.getRefactoringContribution(IJavaRefactorings.RENAME_COMPILATION_UNIT); 
RenameJavaElementDescriptor descriptor = (RenameJavaElementDescriptor) contribution.createDescriptor(); 
descriptor.setProject(cu.getResource().getProject().getName()); 
descriptor.setNewName(newFileName); 
descriptor.setJavaElement(cu); 
descriptor.setUpdateReferences(true); 
RefactoringStatus status = new RefactoringStatus(); 
try { 
    RenameRefactoring refactoring = (RenameRefactoring) descriptor.createRefactoring(status); 
    IProgressMonitor monitor = new NullProgressMonitor(); 
    RefactoringStatus status1 = refactoring.checkInitialConditions(monitor); 
    if (!status1.hasFatalError()) { 
     RefactoringStatus status2 = refactoring.checkFinalConditions(monitor); 
     if (!status2.hasFatalError()) { 
      Change change = refactoring.createChange(monitor); 
      change.perform(monitor); 
     } 
    } 
} catch (CoreException e) { 
    e.printStackTrace(); 
} catch (Exception e) { 
    e.printStackTrace(); 
} 

CuはタイプICompilationUnitのものであり、次のことができますIPackageFragmentからコンパイル単位を取得します。 IJavaRefactorings.RENAME_COMPILATION_UNITを必要に応じて置き換えることもできます。

+0

この回答はJDTに関係するように聞こえますが、質問にはeclipse-cdtというタグが付いています。 – HighCommander4

関連する問題