Os plug-ins do JDT incluem um compilador Java batch e incremental para construir arquivos Java .class a partir do código fonte. Não há uma API direta fornecida pelo compilador. Ela é instalada como um construtor incremental nos projetos Java. A compilação é disparada utilizando mecanismos de construção de plataforma padrão.
O mecanismo de construção de plataforma é descrito com detalhes em construtores de recursos.
É possível de maneira programática, compilar os arquivos fonte Java em um projeto que utilize a API de construção.
IProgressMonitor myProgressMonitor;
myProject.build(IncrementalProjectBuilder.INCREMENTAL_BUILD, myProgressMonitor);
Para um projeto Java, isso chamará o construtor de projeto incremental Java (juntamente com outros construtores de projeto incrementais que tenham sido incluídos na especificação de construção do projeto).
O core do JDT define um marcador especializado (tipo de marcador "org.eclipse.jdt.core.problem") para indicar problemas de compilação. Para descobrir os problemas detectados pelo compilador de maneira programática, deve-se utilizar o protocolo de marcador de plataforma padrão. Consulte marcadores de recursos para obter uma visão geral da utilização de marcadores.
O seguinte trecho procura todos os marcadores de problemas Java em uma unidade de compilação.
public IMarker[] findJavaProblemMarkers(ICompilationUnit cu)
throws CoreException {
IResource javaSourceFile = cu.getUnderlyingResource();
IMarker[] markers =
javaSourceFile.findMarkers(IJavaModelMarker.JAVA_MODEL_PROBLEM_MARKER,
true,
IResource.DEPTH_INFINITE);
}
Os marcadores de problemas Java são mantidos pelo construtor de projeto incremental Java e são removidos automaticamente à medida que os problemas são resolvidos e a origem Java é recompilada.