Java-Code kompilieren

Die JDT-Plug-ins umfassen einen Java-Compiler, mit dem Java-Klassendateien (.class) entweder schrittweise oder im Stapelmodus aus dem Quellcode erstellt werden können. Der Compiler stellt keine direkte API zur Verfügung. Sie wird als Programm zur schrittweisen Erstellung für Java-Projekte installiert. Die Kompilierung wird mit Hilfe von Standarderstellungsmechanismen der Plattform ausgelöst.

Der Erstellungsmechanismus der Plattform ist unter Erstellungsprogramme für Ressourcen ausführlich beschrieben.

Code kompilieren

Mit der Erstellungs-API können Sie die Java-Quellendateien in einem Projekt programmgestützt kompilieren.

IProgressMonitor myProgressMonitor;
myProject.build(IncrementalProjectBuilder.INCREMENTAL_BUILD, myProgressMonitor);

Auf diese Weise wird das Programm zur schrittweisen Java-Projekterstellung für ein Java-Projekt aufgerufen (zusammen mit anderen Programmen zur schrittweisen Projekterstellung, die zur Erstellungsspezifikation des Projekts hinzugefügt wurden).

Probleme ermitteln

Der JDT-Kern definiert eine spezielle Markierung (Markierungstyp "org.eclipse.jdt.core.problem"), die auf Kompilierungsprobleme hinweist. Damit durch den Compiler festgestellte Probleme programmgestützt ermittelt werden können, sollte das Standardmarkierungsprotokoll der Plattform verwendet werden. Eine Übersicht über die Verwendung von Markierungen finden Sie unter Ressourcenmarkierungen.

Der folgende Ausschnitt sucht in einer Kompiliereinheit nach allen Java-Problemmarkierungen.

public IMarker[] findJavaProblemMarkers(ICompilationUnit cu) 
    throws CoreException {
    IResource javaSourceFile = cu.getUnderlyingResource();
    IMarker[] markers = 
        javaSourceFile.findMarkers(IJavaModelMarker.JAVA_MODEL_PROBLEM_MARKER,
            true, IResource.DEPTH_INFINITE);
}

Java-Problemmarkierungen werden durch das Programm zur schrittweisen Java-Projekterstellung verwaltet und automatisch entfernt, sobald die Probleme gelöst wurden und die Java-Quelle erneut kompiliert wird.