2008-09-01 7 views
5

Ich schreibe ein Plugin, das eine Reihe von Dateien in einem Projekt analysieren wird. Aber im Moment sitze ich fest auf der Eclipse API nach Antworten.Eclipse Plugin Dev: Wie bekomme ich die Pfade für das aktuell ausgewählte Projekt?

Das Plugin funktioniert so: Immer wenn ich eine Quelldatei öffne, lasse ich das Plugin die entsprechende Build-Datei der Quelle analysieren (dies könnte weiter entwickelt werden, indem das Parse-Ergebnis zwischengespeichert wird). die Datei zu erhalten ist einfach genug:

public void showSelection(IWorkbenchPart sourcePart) { 
    // Gets the currently selected file from the editor 
    IFile file = (IFile) workbenchPart.getSite().getPage().getActiveEditor() 
     .getEditorInput().getAdapter(IFile.class); 
    if (file != null) { 
     String path = file.getProjectRelativePath(); 
     /** Snipped out: Rip out the source path part 
     * and replace with build path 
     * Then parse it. */ 
    } 
} 

Das Problem, das ich habe, ist ich hart codierte Strings für die Pfade, wo die Quelldateien und Build-Dateien gehen zu verwenden. Kann jemand den Build-Pfad von Eclipse abrufen? (Ich arbeite übrigens in CDT). Gibt es auch einen einfachen Weg zu bestimmen, was der Quellpfad ist (z. B. eine Datei ist unter dem "src" -Verzeichnis) einer Quelldatei?

Antwort

1

Sie sollten sich ICProject ansehen, insbesondere die Operationen getOutputEntries und getAllSourceRoots. This tutorial hat auch einige kurze Beispiele. Ich arbeite mit JDT, so dass ich so ziemlich alles machen kann. Hoffe es hilft :)

+1

Tutorial Link scheint gebrochen zu sein :( –

+0

Der Link für das Tutorial ist kaputt – Joeblackdev

Verwandte Themen