|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface IClasspathContainer
Interface of a classpath container.
A classpath container provides a way to indirectly reference a set of classpath entries through
a classpath entry of kind CPE_CONTAINER
. Typically, a classpath container can
be used to describe a complex library composed of multiple JARs or projects, considering also
that containers can map to different set of entries on each project, in other words, several
projects can reference the same generic container path, but have each of them actually bound
to a different container object.
The set of entries associated with a classpath container may contain any of the following:
CPE_LIBRARY
) CPE_PROJECT
)
Classpath container values are persisted locally to the workspace, but are not preserved from a
session to another. It is thus highly recommended to register a ClasspathContainerInitializer
for each referenced container (through the extension point "org.eclipse.jdt.core.ClasspathContainerInitializer").
IClasspathEntry
Field Summary | |
---|---|
static int |
K_APPLICATION
Kind for a container mapping to an application library |
static int |
K_DEFAULT_SYSTEM
Kind for a container mapping to a default system library, implicitly contributed by the runtime |
static int |
K_SYSTEM
Kind for a container mapping to a system library |
Method Summary | |
---|---|
IClasspathEntry[] |
getClasspathEntries()
Answers the set of classpath entries this container is mapping to. |
java.lang.String |
getDescription()
Answers a readable description of this container |
int |
getKind()
Answers the kind of this container. |
org.eclipse.core.runtime.IPath |
getPath()
Answers the container path identifying this container. |
Field Detail |
---|
static final int K_APPLICATION
static final int K_SYSTEM
static final int K_DEFAULT_SYSTEM
Method Detail |
---|
IClasspathEntry[] getClasspathEntries()
The set of entries associated with a classpath container may contain any of the following:
CPE_LIBRARY
) CPE_PROJECT
) This method is called by the Java model when it needs to resolve this classpath container entry into a list of library and project entries. The method is typically called exactly once for a given Java project, and the resulting list of entries cached internally by the Java model. This method must not be called by other clients.
There are a wide variety of conditions under which this method may be invoked. To ensure that the implementation does not interfere with correct functioning of the Java model, the implementation should use only the following Java model APIs:
JavaCore.newLibraryEntry(IPath, IPath, IPath, boolean)
and variantsJavaCore.newProjectEntry(IPath, boolean)
and variantsJavaCore.create(org.eclipse.core.resources.IWorkspaceRoot)
JavaCore.create(org.eclipse.core.resources.IProject)
IJavaModel.getJavaProjects()
IJavaProject.getRawClasspath()
IJavaProject.readRawClasspath()
IJavaProject.getOutputLocation()
IJavaProject.readOutputLocation()
IClasspathEntry
java.lang.String getDescription()
int getKind()
K_APPLICATION
if this container maps to an application libraryK_SYSTEM
if this container maps to a system libraryK_DEFAULT_SYSTEM
if this container maps to a default system library (library
implicitly contributed by the runtime).
org.eclipse.core.runtime.IPath getPath()
The container ID is also used to identify aClasspathContainerInitializer
registered on the extension point "org.eclipse.jdt.core.classpathContainerInitializer", which can
be invoked if needing to resolve the container before it is explicitly set.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |