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 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 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 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.