Skip to main content

Eclipse Java development tools (JDT) Overview

The JDT project contributes a set of plug-ins that add the capabilities of a full-featured Java IDE to the Eclipse platform. The JDT plugins provide APIs so that they can themselves be further extended by other tool builders.
The JDT plugins are categorized into:


JDT APT adds annotation processing support to Java 5 projects in Eclipse. It provides the following features:

  • Support for running annotation processors written for Sun’s command-line apt tool
  • Contribution of annotation-based build artifacts during incremental build
  • Contribution of problem markers for annotation-based problems

JDT Core

JDT Core defines the non-UI infrastructure. It includes:

  • An incremental Java builder
  • A Java Model that provides API for navigating the Java element tree. The Java element tree defines a Java centric view of a project. It surfaces elements like package fragments, compilation units, binary classes, types, methods, fields.
  • Code assist and code select support
  • An indexed based search infrastructure that is used for searching, code assist, type hierarchy computation, and refactoring.
  • Evaluation support

The JDT Core infrastructure has no built-in JDK version dependencies.

JDT Debug

JDT Debug implements Java debugging support and works with any JDPA-compliant target Java VM. It is implemented on top of the language independent "debug model" provided by the platform debugger.

JDT debug provides the following debugging features:

  • Launching of a Java VM in either run or debug mode
  • Attaching to a running Java VM
  • Expression evaluation in the context of a stack frame
  • Scrapbook pages for interactive Java code snippet evaluation
  • Dynamic class reloading where supported by Java virtual machine

JDT Text

JDT Text provides the Java editor with the following features:

  • Keyword and syntax coloring
  • Context specific (Java, Javadoc) code assist and code select
  • Method level edit
  • Margin annotations for problems, break points, or search matches
  • Outliner updating as editing takes place
  • API help shows Javadoc specification for selected Java element in a pop-up window
  • Import assistance automatically creates and organizes import declarations
  • Code formatting


JDT UI implements Java-specific workbench contributions:

  • Package Explorer
  • Type Hierarchy View
  • Java Outline View
  • Wizards for creating Java elements

The JDT UI provides refactoring support like: Extract Method or Safe Rename for Java elements that also updates references. Users can preview (and veto) individual changes stemming from a refactoring operation.

JDT searching support implements precise searches like find declarations of and/or references to packages, types, methods, and fields, scoped to the workspace, a working set, or the current selection.

JDT compare support implements a structured compare of Java compilation units showing the changes to individual Java methods. It supports to replace individual Java elements with version of element in the local history.

Back to the top