JDT structure and API
Given that the JDT supplies a full featured Java IDE, why would you need to
use the JDT API?
If you are building a plug-in that interacts with Java programs or resources
as part of its function, you may need to do one or more of the following things:
- Programmatically manipulate Java resources, such as creating projects,
generating Java source code, performing builds, or detecting problems in code.
- Programmatically launch a Java program from the platform
- Provide a new type of VM launcher to support a new family of Java runtimes
- Add new functions and extensions to the Java IDE itself
If you want to use JDT API in your plug-in, you must include the JDT plug-ins
as prerequisites in your plug-in.xml.
- org.eclipse.jdt.core is the plug-in that defines the core Java elements
and API. You should always list this plug-in as a prerequisite.
- org.eclipse.jdt.ui is the plug-in that defines the Java UI API. You
should list this plug-in as a prerequisite if you are using the JDT UI classes.
- org.eclipse.jdt.junit is the plug-in that defines the JUnit integration API. You
should list this plug-in as a prerequisite if you are using the JUnit integration classes.
- org.eclipse.jdt.launching is the plug-in that defines the Java launching
and runtime support. You should list this plug-in as a prerequisite if you
need to launch Java virtual machines programmatically.
- org.eclipse.jdt.debug is the plug-in that defines the Java debug
model. You should list this plug-in as a prerequisite if you need to programmatically
access objects in a program being debugged.
- org.eclipse.jdt.debug.ui is the plug-in that defines the Java debug
UI extensions. You should list this plug-in as a prerequisite if you need
to programmatically access the prompting source locator or Java launch configuration
tabs.