Klasse JavaProject

java.lang.Object
org.eclipse.core.runtime.PlatformObject
Alle implementierten Schnittstellen:
IBufferChangedListener, IJavaElement, IJavaProject, IOpenable, IParent, SuffixConstants, org.eclipse.core.resources.IProjectNature, org.eclipse.core.runtime.IAdaptable
Bekannte direkte Unterklassen:
ExternalJavaProject

public class JavaProject extends Openable implements IJavaProject, org.eclipse.core.resources.IProjectNature, SuffixConstants
Handle for a Java Project.

A Java Project internally maintains a devpath that corresponds to the project's classpath. The classpath may include source folders from the current project; jars in the current project, other projects, and the local file system; and binary folders (output location) of other projects. The Java Model presents source elements corresponding to output .class files in other projects, and thus uses the devpath rather than the classpath (which is really a compilation path). The devpath mimics the classpath, except has source folder entries in place of output locations in external projects.

Each JavaProject has a NameLookup facility that locates elements on by name, based on the devpath.

Siehe auch:
  • Felddetails

    • CLASSPATH_FILENAME

      public static final String CLASSPATH_FILENAME
      Name of file containing project classpath
      Siehe auch:
    • INVALID_CLASSPATH

      public static final IClasspathEntry[] INVALID_CLASSPATH
      Value of the project's raw classpath if the .classpath file contains invalid entries.
    • NO_PREREQUISITES

      protected static final String[] NO_PREREQUISITES
      An empty array of strings indicating that a project doesn't have any prerequesite projects.
    • DEFAULT_PREFERENCES_DIRNAME

      public static final String DEFAULT_PREFERENCES_DIRNAME
      Name of directory containing preferences file
      Siehe auch:
    • JAVA_CORE_PREFS_FILE

      public static final String JAVA_CORE_PREFS_FILE
      Extension for file containing custom project preferences
      Siehe auch:
    • project

      protected org.eclipse.core.resources.IProject project
      The platform project this IJavaProject is based on
  • Konstruktordetails

    • JavaProject

      public JavaProject()
      Constructor needed for IProject.getNature() and IProject.addNature().
      Siehe auch:
    • JavaProject

      public JavaProject(org.eclipse.core.resources.IProject project, JavaModel parent)
  • Methodendetails

    • addCPResolutionBPListener

      public static void addCPResolutionBPListener(JavaProject.ClasspathResolutionBreakpointListener listener)
    • removeCPResolutionBPListener

      public static void removeCPResolutionBPListener(JavaProject.ClasspathResolutionBreakpointListener listener)
    • areClasspathsEqual

      public static boolean areClasspathsEqual(IClasspathEntry[] firstClasspath, IClasspathEntry[] secondClasspath, org.eclipse.core.runtime.IPath firstOutputLocation, org.eclipse.core.runtime.IPath secondOutputLocation)
    • createPackageFragementKey

      public static org.eclipse.core.runtime.IPath createPackageFragementKey(org.eclipse.core.runtime.IPath externalPath)
      Does nothing by default. With system flag org.eclipse.jdt.resolve_actual_packagefragment_name=true it tries to find the actual filename
    • canonicalizedPath

      @Deprecated public static org.eclipse.core.runtime.IPath canonicalizedPath(org.eclipse.core.runtime.IPath externalPath)
      Veraltet.
      This method may not do what you expect from its name (see bug 571614):

      On Linux/Mac (CASE_SENSITIVE by default) it does nothing - even when pointing to a case insensitive filesystem.

      On Windows (CASE_INSENSITIVE by default) it will find the actual capitalization of all path segments. On Windows it will also resolve 8.3 filenames to its long names. On Windows this results in slow system calls for every segment of the path since JDK 12 (see https://bugs.openjdk.java.net/browse/JDK-8207005) - even when the filesystem is configured to be case sensitive and 8.3 name resolving is disabled.

      ALTERNATIVES:

      For package fragments use createPackageFragementKey(org.eclipse.core.runtime.IPath)

      For comparing files use Files.isSameFile(java.nio.file.Path, java.nio.file.Path)

      For getting the actual capitalization use Path.toRealPath(java.nio.file.LinkOption...)

      Returns a canonicalized path from the given external path. Note that the return path contains the same number of segments and it contains a device only if the given path contained one.
      Parameter:
      externalPath - IPath
      Gibt zurück:
      IPath
    • hasJavaNature

      public static boolean hasJavaNature(org.eclipse.core.resources.IProject project)
      Returns true if the given project is accessible and it has a java nature, otherwise false.
      Parameter:
      project - IProject
      Gibt zurück:
      boolean
    • validateCycles

      public static void validateCycles(Map preferredClasspaths) throws JavaModelException
      Löst aus:
      JavaModelException
    • addToBuildSpec

      protected void addToBuildSpec(String builderID) throws org.eclipse.core.runtime.CoreException
      Adds a builder to the build spec for the given project.
      Löst aus:
      org.eclipse.core.runtime.CoreException
    • buildStructure

      protected boolean buildStructure(OpenableElementInfo info, org.eclipse.core.runtime.IProgressMonitor pm, Map newElements, org.eclipse.core.resources.IResource underlyingResource) throws JavaModelException
      Beschreibung aus Klasse kopiert: Openable
      Builds this element's structure and properties in the given info object, based on this element's current contents (reuse buffer contents if this element has an open buffer, or resource contents if this element does not have an open buffer). Children are placed in the given newElements table (note, this element has already been placed in the newElements table). Returns true if successful, or false if an error is encountered while determining the structure of this element.
      Angegeben von:
      buildStructure in Klasse Openable
      Löst aus:
      JavaModelException
      Siehe auch:
    • close

      public void close() throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IOpenable
      Closes this element and its buffer (if any). Closing an element which is not open has no effect.

      Note: Although IOpenable.close() is exposed in the API, clients are not expected to open and close elements - the Java model does this automatically as elements are accessed.

      Angegeben von:
      close in Schnittstelle IOpenable
      Setzt außer Kraft:
      close in Klasse JavaElement
      Löst aus:
      JavaModelException - if an error occurs closing this element
      Siehe auch:
    • computePackageFragmentRoots

      public IPackageFragmentRoot[] computePackageFragmentRoots(IClasspathEntry resolvedEntry)
      Computes the package fragment roots identified by the given entry. Only works with resolved entry
      Parameter:
      resolvedEntry - IClasspathEntry
      Gibt zurück:
      IPackageFragmentRoot[]
    • computePackageFragmentRoots

      public void computePackageFragmentRoots(IClasspathEntry resolvedEntry, ObjectVector accumulatedRoots, HashSet rootIDs, IClasspathEntry referringEntry, boolean retrieveExportedRoots, boolean filterModuleRoots, Map rootToResolvedEntries) throws JavaModelException
      Löst aus:
      JavaModelException
    • computePackageFragmentRoots

      public void computePackageFragmentRoots(IClasspathEntry resolvedEntry, ObjectVector accumulatedRoots, HashSet rootIDs, IClasspathEntry referringEntry, boolean retrieveExportedRoots, Map rootToResolvedEntries) throws JavaModelException
      Returns the package fragment roots identified by the given entry. In case it refers to a project, it will follow its classpath so as to find exported roots as well. Only works with resolved entry

      Note: this method is retained for the sole purpose of supporting old versions of Xtext [2.8.x,2.12], which illegally call this internal method.

      Parameter:
      resolvedEntry - IClasspathEntry
      accumulatedRoots - ObjectVector
      rootIDs - HashSet
      referringEntry - the CP entry (project) referring to this entry, or null if initial project
      retrieveExportedRoots - boolean
      Löst aus:
      JavaModelException
    • computePackageFragmentRoots

      public void computePackageFragmentRoots(IClasspathEntry resolvedEntry, ObjectVector accumulatedRoots, HashSet rootIDs, IClasspathEntry referringEntry, boolean retrieveExportedRoots, boolean filterModuleRoots, Map rootToResolvedEntries, boolean excludeTestCode) throws JavaModelException
      Returns the package fragment roots identified by the given entry. In case it refers to a project, it will follow its classpath so as to find exported roots as well. Only works with resolved entry
      Parameter:
      resolvedEntry - IClasspathEntry
      accumulatedRoots - ObjectVector
      rootIDs - HashSet
      referringEntry - the CP entry (project) referring to this entry, or null if initial project
      retrieveExportedRoots - boolean
      filterModuleRoots - if true, roots corresponding to modules will be filtered if applicable: if a limit-modules attribute exists, this is used, otherwise system modules will be filtered according to the rules of root modules per JEP 261.
      Löst aus:
      JavaModelException
    • defaultRootModules

      public static List<String> defaultRootModules(Iterable<IPackageFragmentRoot> allSystemRoots)
      Implements selection of root modules per JEP 261.
    • internalDefaultRootModules

      public static <T> List<String> internalDefaultRootModules(Iterable<T> allSystemModules, Function<T,String> getModuleName, Function<T,IModule> getModule)
    • findUnfilteredPackageFragmentRoots

      public IPackageFragmentRoot[] findUnfilteredPackageFragmentRoots(IClasspathEntry entry)
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      In a Java 9 project, a classpath entry can be filtered using a IClasspathAttribute.LIMIT_MODULES attribute, otherwise for an unnamed module a default set of roots is used as defined in JEP 261. In both cases IJavaProject.findPackageFragmentRoots(IClasspathEntry) will not contain all roots physically present in the container.

      This API can be used to bypass any filter and get really all roots to which the given entry is resolved.

      Angegeben von:
      findUnfilteredPackageFragmentRoots in Schnittstelle IJavaProject
      Parameter:
      entry - a classpath entry of this Java project
      Gibt zurück:
      the unfiltered array of package fragment roots to which the classpath entry resolves
      Siehe auch:
    • computePackageFragmentRoots

      public IPackageFragmentRoot[] computePackageFragmentRoots(IClasspathEntry[] resolvedClasspath, boolean retrieveExportedRoots, boolean filterModuleRoots, Map rootToResolvedEntries) throws JavaModelException
      Löst aus:
      JavaModelException
    • computePackageFragmentRoots

      public IPackageFragmentRoot[] computePackageFragmentRoots(IClasspathEntry[] resolvedClasspath, boolean retrieveExportedRoots, boolean filterModuleRoots, Map rootToResolvedEntries, boolean excludeTestCode) throws JavaModelException
      Returns (local/all) the package fragment roots identified by the given project's classpath. Note: this follows project classpath references to find required project contributions, eliminating duplicates silently. Only works with resolved entries
      Parameter:
      resolvedClasspath - IClasspathEntry[]
      retrieveExportedRoots - boolean
      filterModuleRoots - if true, roots corresponding to modules will be filtered if applicable: if a limit-modules attribute exists, this is used, otherwise system modules will be filtered according to the rules of root modules per JEP 261.
      Gibt zurück:
      IPackageFragmentRoot[]
      Löst aus:
      JavaModelException
    • computePackageFragmentRoots

      @Deprecated public void computePackageFragmentRoots(IClasspathEntry[] resolvedClasspath, ObjectVector accumulatedRoots, HashSet rootIDs, IClasspathEntry referringEntry, boolean retrieveExportedRoots, boolean filterModuleRoots, Map rootToResolvedEntries) throws JavaModelException
      Veraltet.
      Löst aus:
      JavaModelException
    • computePackageFragmentRoots

      public void computePackageFragmentRoots(IClasspathEntry[] resolvedClasspath, ObjectVector accumulatedRoots, HashSet rootIDs, IClasspathEntry referringEntry, boolean retrieveExportedRoots, boolean filterModuleRoots, Map rootToResolvedEntries, boolean excludeTestCode) throws JavaModelException
      Returns (local/all) the package fragment roots identified by the given project's classpath. Note: this follows project classpath references to find required project contributions, eliminating duplicates silently. Only works with resolved entries
      Parameter:
      resolvedClasspath - IClasspathEntry[]
      accumulatedRoots - ObjectVector
      rootIDs - HashSet
      referringEntry - project entry referring to this CP or null if initial project
      retrieveExportedRoots - boolean
      filterModuleRoots - if true, roots corresponding to modules will be filtered if applicable: if a limit-modules attribute exists, this is used, otherwise system modules will be filtered according to the rules of root modules per JEP 261.
      Löst aus:
      JavaModelException
    • computeSharedPropertyFileName

      public String computeSharedPropertyFileName(org.eclipse.core.runtime.QualifiedName qName)
      Compute the file name to use for a given shared property
      Parameter:
      qName - QualifiedName
      Gibt zurück:
      String
    • configure

      public void configure() throws org.eclipse.core.runtime.CoreException
      Configure the project with Java nature.
      Angegeben von:
      configure in Schnittstelle org.eclipse.core.resources.IProjectNature
      Löst aus:
      org.eclipse.core.runtime.CoreException
    • contains

      public boolean contains(org.eclipse.core.resources.IResource resource)
    • createClasspathProblemMarker

      public void createClasspathProblemMarker(IJavaModelStatus status)
      Record a new marker denoting a classpath problem
    • createElementInfo

      protected Object createElementInfo()
      Returns a new element info for this element.
      Setzt außer Kraft:
      createElementInfo in Klasse Openable
    • decodeClasspath

      public IClasspathEntry[][] decodeClasspath(String xmlClasspath, Map unknownElements) throws IOException, ClasspathEntry.AssertionFailedException
      Reads and decode an XML classpath string. Returns a two-dimensional array, where the number of elements in the row is fixed to 2. The first element is an array of raw classpath entries and the second element is an array of referenced entries that may have been stored by the client earlier. See IJavaProject.getReferencedClasspathEntries() for more details.
      Löst aus:
      IOException
      ClasspathEntry.AssertionFailedException
    • decodeClasspathEntry

      public IClasspathEntry decodeClasspathEntry(String encodedEntry)
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Decodes the classpath entry that has been encoded in the given string in the context of this project. Returns null if the encoded entry is malformed.
      Angegeben von:
      decodeClasspathEntry in Schnittstelle IJavaProject
      Parameter:
      encodedEntry - the encoded classpath entry
      Gibt zurück:
      the decoded classpath entry, or null if unable to decode it
    • deconfigure

      public void deconfigure() throws org.eclipse.core.runtime.CoreException
      /** Removes the Java nature from the project.
      Angegeben von:
      deconfigure in Schnittstelle org.eclipse.core.resources.IProjectNature
      Löst aus:
      org.eclipse.core.runtime.CoreException
    • defaultClasspath

      protected IClasspathEntry[] defaultClasspath()
      Returns a default class path. This is the root of the project
    • defaultOutputLocation

      protected org.eclipse.core.runtime.IPath defaultOutputLocation()
      Returns a default output location. This is the project bin folder
    • encodeClasspath

      protected String encodeClasspath(IClasspathEntry[] classpath, IClasspathEntry[] referencedEntries, org.eclipse.core.runtime.IPath outputLocation, boolean indent, Map unknownElements) throws JavaModelException
      Returns the XML String encoding of the class path.
      Löst aus:
      JavaModelException
    • encodeClasspathEntry

      public String encodeClasspathEntry(IClasspathEntry classpathEntry)
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Encodes the given classpath entry into a string in the context of this project.
      Angegeben von:
      encodeClasspathEntry in Schnittstelle IJavaProject
      Parameter:
      classpathEntry - the classpath entry to encode
      Gibt zurück:
      the encoded classpath entry
    • equals

      public boolean equals(Object o)
      Returns true if this handle represents the same Java project as the given handle. Two handles represent the same project if they are identical or if they represent a project with the same underlying resource and occurrence counts.
      Setzt außer Kraft:
      equals in Klasse JavaElement
      Siehe auch:
    • findElement

      public IJavaElement findElement(org.eclipse.core.runtime.IPath path) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the IJavaElement corresponding to the given classpath-relative path, or null if no such IJavaElement is found. The result is one of an ICompilationUnit, IClassFile, or IPackageFragment.

      When looking for a package fragment, there might be several potential matches; only one of them is returned.

      For example, the path "java/lang/Object.java", would result in the ICompilationUnit or IClassFile corresponding to "java.lang.Object". The path "java/lang" would result in the IPackageFragment for "java.lang".

      Angegeben von:
      findElement in Schnittstelle IJavaProject
      Parameter:
      path - the given classpath-relative path
      Gibt zurück:
      the IJavaElement corresponding to the given classpath-relative path, or null if no such IJavaElement is found
      Löst aus:
      JavaModelException - if the given path is null or absolute
      Siehe auch:
    • findElement

      public IJavaElement findElement(org.eclipse.core.runtime.IPath path, WorkingCopyOwner owner) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the IJavaElement corresponding to the given classpath-relative path, or null if no such IJavaElement is found. The result is one of an ICompilationUnit, IClassFile, or IPackageFragment. If it is an ICompilationUnit, its owner is the given owner.

      When looking for a package fragment, there might be several potential matches; only one of them is returned.

      For example, the path "java/lang/Object.java", would result in the ICompilationUnit or IClassFile corresponding to "java.lang.Object". The path "java/lang" would result in the IPackageFragment for "java.lang".

      Angegeben von:
      findElement in Schnittstelle IJavaProject
      Parameter:
      path - the given classpath-relative path
      owner - the owner of the returned compilation unit, ignored if it is not a compilation unit.
      Gibt zurück:
      the IJavaElement corresponding to the given classpath-relative path, or null if no such IJavaElement is found
      Löst aus:
      JavaModelException - if the given path is null or absolute
      Siehe auch:
    • findPackageFragment

      public IJavaElement findPackageFragment(String packageName) throws JavaModelException
      Löst aus:
      JavaModelException
    • findElement

      public IJavaElement findElement(String bindingKey, WorkingCopyOwner owner) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Finds the Java element corresponding to the given binding key if any, else returns null. Elements are looked up using this project's classpath. The first element corresponding to the given key on this project's classpath is returned.

      Possible elements are:

      Note: if two methods correspond to the binding key because their parameter types' simple names are the same, then the first one is returned. For example, if a class defines two methods foo(p1.Y, String) and foo(p2.Y, String), in both cases the parameter type's simple names are {"Y", "String"}. Thus foo(p1.Y, String) is returned.

      Angegeben von:
      findElement in Schnittstelle IJavaProject
      Parameter:
      bindingKey - the given binding key
      owner - the owner of the returned element's compilation unit, or null if the default working copy owner must be used
      Gibt zurück:
      the Java element corresponding to the given key, or null if no such Java element is found
      Löst aus:
      JavaModelException - if this project does not exist or if an exception occurs while accessing its corresponding resource
    • findPackageFragment

      public IPackageFragment findPackageFragment(org.eclipse.core.runtime.IPath path) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the first existing package fragment on this project's classpath whose path matches the given (absolute) path, or null if none exist. The path can be: - internal to the workbench: "/Project/src" - external to the workbench: "c:/jdk/classes.zip/java/lang"
      Angegeben von:
      findPackageFragment in Schnittstelle IJavaProject
      Parameter:
      path - the given absolute path
      Gibt zurück:
      the first existing package fragment on this project's classpath whose path matches the given (absolute) path, or null if none exist
      Löst aus:
      JavaModelException - if this project does not exist or if an exception occurs while accessing its corresponding resource
      Siehe auch:
    • findPackageFragmentRoot

      public IPackageFragmentRoot findPackageFragmentRoot(org.eclipse.core.runtime.IPath path) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the existing package fragment root on this project's classpath whose path matches the given (absolute) path, or null if one does not exist. The path can be: - internal to the workbench: "/Compiler/src" - external to the workbench: "c:/jdk/classes.zip"
      Angegeben von:
      findPackageFragmentRoot in Schnittstelle IJavaProject
      Parameter:
      path - the given absolute path
      Gibt zurück:
      the existing package fragment root on this project's classpath whose path matches the given (absolute) path, or null if one does not exist
      Löst aus:
      JavaModelException - if this project does not exist or if an exception occurs while accessing its corresponding resource
      Siehe auch:
    • findPackageFragmentRoot0

      public IPackageFragmentRoot findPackageFragmentRoot0(org.eclipse.core.runtime.IPath path) throws JavaModelException
      Löst aus:
      JavaModelException
    • findPackageFragmentRoots

      public IPackageFragmentRoot[] findPackageFragmentRoots(IClasspathEntry entry)
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the existing package fragment roots identified by the given entry. A classpath entry within the current project identifies a single root.

      If the classpath entry denotes a variable, it will be resolved and return the roots of the target entry (empty if not resolvable).

      If the classpath entry denotes a container, it will be resolved and return the roots corresponding to the set of container entries (empty if not resolvable).

      The result does not include package fragment roots in other projects referenced on this project's classpath.

      Angegeben von:
      findPackageFragmentRoots in Schnittstelle IJavaProject
      Parameter:
      entry - the given entry
      Gibt zurück:
      the existing package fragment roots identified by the given entry
      Siehe auch:
    • findType

      public IType findType(String fullyQualifiedName) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the first type (excluding secondary types) found following this project's classpath with the given fully qualified name or null if none is found. The fully qualified name is a dot-separated name. For example, a class B defined as a member type of a class A in package x.y should have a the fully qualified name "x.y.A.B". Note that in order to be found, a type name (or its top level enclosing type name) must match its corresponding compilation unit name. As a consequence, secondary types cannot be found using this functionality. To find secondary types use IJavaProject.findType(String, IProgressMonitor) instead.
      Angegeben von:
      findType in Schnittstelle IJavaProject
      Parameter:
      fullyQualifiedName - the given fully qualified name
      Gibt zurück:
      the first type found following this project's classpath with the given fully qualified name or null if none is found
      Löst aus:
      JavaModelException - if this project does not exist or if an exception occurs while accessing its corresponding resource
      Siehe auch:
    • findType

      public IType findType(String fullyQualifiedName, org.eclipse.core.runtime.IProgressMonitor progressMonitor) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Same functionality as IJavaProject.findType(String) but also looks for secondary types if the given name does not match a compilation unit name.
      Angegeben von:
      findType in Schnittstelle IJavaProject
      Parameter:
      fullyQualifiedName - the given fully qualified name
      progressMonitor - the progress monitor to report progress to, or null if no progress monitor is provided
      Gibt zurück:
      the first type found following this project's classpath with the given fully qualified name or null if none is found
      Löst aus:
      JavaModelException - if this project does not exist or if an exception occurs while accessing its corresponding resource
      Siehe auch:
    • findType

      public IType findType(String packageName, String typeQualifiedName) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the first type (excluding secondary types) found following this project's classpath with the given package name and type qualified name or null if none is found. The package name is a dot-separated name. The type qualified name is also a dot-separated name. For example, a class B defined as a member type of a class A should have the type qualified name "A.B". Note that in order to be found, a type name (or its top level enclosing type name) must match its corresponding compilation unit name. As a consequence, secondary types cannot be found using this functionality. To find secondary types use IJavaProject.findType(String, String, IProgressMonitor) instead.
      Angegeben von:
      findType in Schnittstelle IJavaProject
      Parameter:
      packageName - the given package name
      typeQualifiedName - the given type qualified name
      Gibt zurück:
      the first type found following this project's classpath with the given package name and type qualified name or null if none is found
      Löst aus:
      JavaModelException - if this project does not exist or if an exception occurs while accessing its corresponding resource
      Siehe auch:
    • findType

      public IType findType(String packageName, String typeQualifiedName, org.eclipse.core.runtime.IProgressMonitor progressMonitor) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Same functionality as IJavaProject.findType(String, String) but also looks for secondary types if the given name does not match a compilation unit name.
      Angegeben von:
      findType in Schnittstelle IJavaProject
      Parameter:
      packageName - the given package name
      typeQualifiedName - the given type qualified name
      progressMonitor - the progress monitor to report progress to, or null if no progress monitor is provided
      Gibt zurück:
      the first type found following this project's classpath with the given fully qualified name or null if none is found
      Löst aus:
      JavaModelException - if this project does not exist or if an exception occurs while accessing its corresponding resource
      Siehe auch:
    • findType

      public IType findType(String packageName, String typeQualifiedName, WorkingCopyOwner owner) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the first type (excluding secondary types) found following this project's classpath with the given package name and type qualified name or null if none is found. The package name is a dot-separated name. The type qualified name is also a dot-separated name. For example, a class B defined as a member type of a class A should have the type qualified name "A.B". If the returned type is part of a compilation unit, its owner is the given owner. Note that in order to be found, a type name (or its top level enclosing type name) must match its corresponding compilation unit name. As a consequence, secondary types cannot be found using this functionality. To find secondary types use IJavaProject.findType(String, String, WorkingCopyOwner, IProgressMonitor) instead.
      Angegeben von:
      findType in Schnittstelle IJavaProject
      Parameter:
      packageName - the given package name
      typeQualifiedName - the given type qualified name
      owner - the owner of the returned type's compilation unit
      Gibt zurück:
      the first type found following this project's classpath with the given package name and type qualified name or null if none is found
      Löst aus:
      JavaModelException - if this project does not exist or if an exception occurs while accessing its corresponding resource
      Siehe auch:
    • findType

      public IType findType(String packageName, String typeQualifiedName, WorkingCopyOwner owner, org.eclipse.core.runtime.IProgressMonitor progressMonitor) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Same functionality as IJavaProject.findType(String, String, WorkingCopyOwner) but also looks for secondary types if the given name does not match a compilation unit name.
      Angegeben von:
      findType in Schnittstelle IJavaProject
      Parameter:
      packageName - the given package name
      typeQualifiedName - the given type qualified name
      owner - the owner of the returned type's compilation unit
      progressMonitor - the progress monitor to report progress to, or null if no progress monitor is provided
      Gibt zurück:
      the first type found following this project's classpath with the given fully qualified name or null if none is found
      Löst aus:
      JavaModelException - if this project does not exist or if an exception occurs while accessing its corresponding resource
      Siehe auch:
    • findType

      public IType findType(String fullyQualifiedName, WorkingCopyOwner owner) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the first type (excluding secondary types) found following this project's classpath with the given fully qualified name or null if none is found. The fully qualified name is a dot-separated name. For example, a class B defined as a member type of a class A in package x.y should have a the fully qualified name "x.y.A.B". If the returned type is part of a compilation unit, its owner is the given owner. Note that in order to be found, a type name (or its top level enclosing type name) must match its corresponding compilation unit name. As a consequence, secondary types cannot be found using this functionality. To find secondary types use IJavaProject.findType(String, WorkingCopyOwner, IProgressMonitor) instead.
      Angegeben von:
      findType in Schnittstelle IJavaProject
      Parameter:
      fullyQualifiedName - the given fully qualified name
      owner - the owner of the returned type's compilation unit
      Gibt zurück:
      the first type found following this project's classpath with the given fully qualified name or null if none is found
      Löst aus:
      JavaModelException - if this project does not exist or if an exception occurs while accessing its corresponding resource
      Siehe auch:
    • findType

      public IType findType(String fullyQualifiedName, WorkingCopyOwner owner, org.eclipse.core.runtime.IProgressMonitor progressMonitor) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Same functionality as IJavaProject.findType(String, WorkingCopyOwner) but also looks for secondary types if the given name does not match a compilation unit name.
      Angegeben von:
      findType in Schnittstelle IJavaProject
      Parameter:
      fullyQualifiedName - the given fully qualified name
      owner - the owner of the returned type's compilation unit
      progressMonitor - the progress monitor to report progress to, or null if no progress monitor is provided
      Gibt zurück:
      the first type found following this project's classpath with the given fully qualified name or null if none is found
      Löst aus:
      JavaModelException - if this project does not exist or if an exception occurs while accessing its corresponding resource
      Siehe auch:
    • findModule

      public IModuleDescription findModule(String moduleName, WorkingCopyOwner owner) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Finds the first module with the given name found following this project's module path. If the returned module descriptor is part of a compilation unit, its owner is the given owner.
      Angegeben von:
      findModule in Schnittstelle IJavaProject
      Parameter:
      moduleName - the given module name
      owner - the owner of the returned module descriptor's compilation unit
      Gibt zurück:
      the first module found following this project's module path with the given name or null if none is found
      Löst aus:
      JavaModelException - if this project does not exist or if an exception occurs while accessing its corresponding resource
    • flushClasspathProblemMarkers

      protected void flushClasspathProblemMarkers(boolean flushCycleMarkers, boolean flushClasspathFormatMarkers, boolean flushOverlappingOutputMarkers)
      Remove all markers denoting classpath problems
    • getAccessRestrictions

      public org.eclipse.core.runtime.IPath[] getAccessRestrictions(String optionName)
      Returns the set of patterns corresponding to this project visibility given rules
      Gibt zurück:
      an array of IPath or null if none
    • getAllPackageFragmentRoots

      public IPackageFragmentRoot[] getAllPackageFragmentRoots() throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns all of the existing package fragment roots that exist on the classpath, in the order they are defined by the classpath.
      Angegeben von:
      getAllPackageFragmentRoots in Schnittstelle IJavaProject
      Gibt zurück:
      all of the existing package fragment roots that exist on the classpath
      Löst aus:
      JavaModelException - if this element does not exist or if an exception occurs while accessing its corresponding resource
      Siehe auch:
    • getAllPackageFragmentRoots

      @Deprecated public IPackageFragmentRoot[] getAllPackageFragmentRoots(Map rootToResolvedEntries) throws JavaModelException
      Veraltet.
      Löst aus:
      JavaModelException
    • getAllPackageFragmentRoots

      public IPackageFragmentRoot[] getAllPackageFragmentRoots(Map rootToResolvedEntries, boolean excludeTestCode) throws JavaModelException
      Löst aus:
      JavaModelException
    • getClasspathEntryFor

      public IClasspathEntry getClasspathEntryFor(org.eclipse.core.runtime.IPath path) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the classpath entry that refers to the given path or null if there is no reference to the path.
      Angegeben von:
      getClasspathEntryFor in Schnittstelle IJavaProject
      Parameter:
      path - IPath
      Gibt zurück:
      the classpath entry or null.
      Löst aus:
      JavaModelException
    • getCycleMarker

      public org.eclipse.core.resources.IMarker getCycleMarker()
    • getEclipsePreferences

      public org.eclipse.core.runtime.preferences.IEclipsePreferences getEclipsePreferences()
      Returns the project custom preference pool. Project preferences may include custom encoding.
      Gibt zurück:
      IEclipsePreferences or null if the project does not have a java nature.
    • getElementName

      public String getElementName()
      Beschreibung aus Schnittstelle kopiert: IJavaElement
      Returns the name of this element. This is a handle-only method.
      Angegeben von:
      getElementName in Schnittstelle IJavaElement
      Setzt außer Kraft:
      getElementName in Klasse JavaElement
      Gibt zurück:
      the element name
      Siehe auch:
      • IAdaptable
    • getElementType

      public int getElementType()
      Beschreibung aus Schnittstelle kopiert: IJavaElement
      Returns this element's kind encoded as an integer. This is a handle-only method.
      Angegeben von:
      getElementType in Schnittstelle IJavaElement
      Gibt zurück:
      the kind of element; one of the constants declared in IJavaElement
      Siehe auch:
    • getExpandedClasspath

      public IClasspathEntry[] getExpandedClasspath() throws JavaModelException
      This is a helper method returning the expanded classpath for the project, as a list of classpath entries, where all classpath variable entries have been resolved and substituted with their final target entries. All project exports have been appended to project entries.
      Gibt zurück:
      IClasspathEntry[]
      Löst aus:
      JavaModelException
    • getExpandedClasspath

      public IClasspathEntry[] getExpandedClasspath(boolean excludeTestCode) throws JavaModelException
      Löst aus:
      JavaModelException
    • getFolderPackageFragmentRoot

      public IPackageFragmentRoot getFolderPackageFragmentRoot(org.eclipse.core.runtime.IPath path)
      The path is known to match a source/library folder entry.
      Parameter:
      path - IPath
      Gibt zurück:
      IPackageFragmentRoot
    • getHandleFromMemento

      public IJavaElement getHandleFromMemento(String token, MementoTokenizer memento, WorkingCopyOwner owner)
      Angegeben von:
      getHandleFromMemento in Klasse JavaElement
    • getHandleMementoDelimiter

      protected char getHandleMementoDelimiter()
      Returns the char that marks the start of this handles contribution to a memento.
      Angegeben von:
      getHandleMementoDelimiter in Klasse JavaElement
    • getJavaProjectElementInfo

      protected org.aspectj.org.eclipse.jdt.internal.core.JavaProjectElementInfo getJavaProjectElementInfo() throws JavaModelException
      Convenience method that returns the specific type of info for a Java project.
      Löst aus:
      JavaModelException
    • getNonJavaResources

      public Object[] getNonJavaResources() throws JavaModelException
      Returns an array of non-java resources contained in the receiver.
      Angegeben von:
      getNonJavaResources in Schnittstelle IJavaProject
      Gibt zurück:
      an array of non-Java resources (IFiles and/or IFolders) directly contained in this project
      Löst aus:
      JavaModelException - if this element does not exist or if an exception occurs while accessing its corresponding resource
    • getOption

      public String getOption(String optionName, boolean inheritJavaCoreOptions)
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Helper method for returning one option value only. Equivalent to (String)this.getOptions(inheritJavaCoreOptions).get(optionName) Note that it may answer null if this option does not exist, or if there is no custom value for it.

      For a complete description of the configurable options, see JavaCore#getDefaultOptions.

      Angegeben von:
      getOption in Schnittstelle IJavaProject
      Parameter:
      optionName - the name of an option
      inheritJavaCoreOptions - - boolean indicating whether JavaCore options should be inherited as well
      Gibt zurück:
      the String value of a given option
      Siehe auch:
      • Ungültige Referenz
        org.eclipse.jdt.core.IJavaProject#getOption(String, boolean)
    • getOptions

      public Map<String,String> getOptions(boolean inheritJavaCoreOptions)
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the table of the current custom options for this project. Projects remember their custom options, in other words, only the options different from the the JavaCore global options for the workspace. A boolean argument allows to directly merge the project options with global ones from JavaCore.

      For a complete description of the configurable options, see JavaCore#getDefaultOptions.

      Angegeben von:
      getOptions in Schnittstelle IJavaProject
      Parameter:
      inheritJavaCoreOptions - - boolean indicating whether JavaCore options should be inherited as well
      Gibt zurück:
      table of current settings of all options (key type: String; value type: String)
      Siehe auch:
      • Ungültige Referenz
        org.eclipse.jdt.core.IJavaProject#getOptions(boolean)
    • getOutputLocation

      public org.eclipse.core.runtime.IPath getOutputLocation() throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the default output location for this project as a workspace- relative absolute path.

      The default output location is where class files are ordinarily generated (and resource files, copied). Each source classpath entry can also specify an output location for the generated class files (and copied resource files) corresponding to compilation units under that source folder. This makes it possible to arrange generated class files for different source folders in different output folders, and not necessarily the default output folder. This means that the generated class files for the project may end up scattered across several folders, rather than all in the default output folder (which is more standard).

      Angegeben von:
      getOutputLocation in Schnittstelle IJavaProject
      Gibt zurück:
      the workspace-relative absolute path of the default output folder
      Löst aus:
      JavaModelException - if this element does not exist
      Siehe auch:
    • getPackageFragmentRoot

      public IPackageFragmentRoot getPackageFragmentRoot(org.eclipse.core.runtime.IPath path, IClasspathAttribute[] extraAttributes)
      Parameter:
      path - IPath
      Gibt zurück:
      A handle to the package fragment root identified by the given path. This method is handle-only and the element may or may not exist. Returns null if unable to generate a handle from the path (for example, an absolute path that has less than 1 segment. The path may be relative or absolute.
    • getPackageFragmentRoot

      public IPackageFragmentRoot getPackageFragmentRoot(org.eclipse.core.resources.IResource resource)
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns a package fragment root for the given resource, which must either be a folder representing the top of a package hierarchy, or a ZIP archive (e.g. a .jar, a .zip file, etc.) This is a handle-only method. The underlying resource may or may not exist.
      Angegeben von:
      getPackageFragmentRoot in Schnittstelle IJavaProject
      Parameter:
      resource - the given resource
      Gibt zurück:
      a package fragment root for the given resource, which must either be a folder representing the top of a package hierarchy, or a ZIP archive (e.g. a .jar, a .zip file, etc.)
      Siehe auch:
    • getPackageFragmentRoot

      public IPackageFragmentRoot getPackageFragmentRoot(org.eclipse.core.resources.IResource resource, org.eclipse.core.runtime.IPath entryPath, IClasspathAttribute[] extraAttributes)
    • getPackageFragmentRoot

      public IPackageFragmentRoot getPackageFragmentRoot(String externalLibraryPath)
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns a package fragment root for an external library (a ZIP archive - e.g. a .jar, a .zip file, etc. - or - since 3.4 - a class folder) at the specified file system path. This is a handle-only method. The underlying java.io.File may or may not exist. No resource is associated with this local library package fragment root.
      Angegeben von:
      getPackageFragmentRoot in Schnittstelle IJavaProject
      Parameter:
      externalLibraryPath - the library's file system path
      Gibt zurück:
      a package fragment root for the external library at the specified file system path
      Siehe auch:
    • getPackageFragmentRoot0

      public IPackageFragmentRoot getPackageFragmentRoot0(org.eclipse.core.runtime.IPath externalLibraryPath, IClasspathAttribute[] extraAttributes)
    • getPackageFragmentRoots

      public IPackageFragmentRoot[] getPackageFragmentRoots() throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns all of the package fragment roots contained in this project, identified on this project's resolved classpath. The result does not include package fragment roots in other projects referenced on this project's classpath. The package fragment roots appear in the order they are defined by the classpath.

      NOTE: This is equivalent to getChildren().

      Angegeben von:
      getPackageFragmentRoots in Schnittstelle IJavaProject
      Gibt zurück:
      all of the package fragment roots contained in this project, identified on this project's resolved classpath
      Löst aus:
      JavaModelException - if this element does not exist or if an exception occurs while accessing its corresponding resource
      Siehe auch:
    • getPackageFragmentRoots

      public IPackageFragmentRoot[] getPackageFragmentRoots(IClasspathEntry entry)
      Veraltet.
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the existing package fragment roots identified by the given entry. A classpath entry within the current project identifies a single root.

      If the classpath entry denotes a variable, it will be resolved and return the roots of the target entry (empty if not resolvable).

      If the classpath entry denotes a container, it will be resolved and return the roots corresponding to the set of container entries (empty if not resolvable).

      The result does not include package fragment roots in other projects referenced on this project's classpath.

      Angegeben von:
      getPackageFragmentRoots in Schnittstelle IJavaProject
      Parameter:
      entry - the given entry
      Gibt zurück:
      the existing package fragment roots identified by the given entry
      Siehe auch:
    • getPackageFragments

      public IPackageFragment[] getPackageFragments() throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns all package fragments in all package fragment roots contained in this project. This is a convenience method. Note that the package fragment roots corresponds to the resolved classpath of the project.
      Angegeben von:
      getPackageFragments in Schnittstelle IJavaProject
      Gibt zurück:
      all package fragments in all package fragment roots contained in this project
      Löst aus:
      JavaModelException - if this element does not exist or if an exception occurs while accessing its corresponding resource
      Siehe auch:
    • getPackageFragmentsInRoots

      public IPackageFragment[] getPackageFragmentsInRoots(IPackageFragmentRoot[] roots)
      Returns all the package fragments found in the specified package fragment roots.
      Parameter:
      roots - IPackageFragmentRoot[]
      Gibt zurück:
      IPackageFragment[]
    • getPath

      public org.eclipse.core.runtime.IPath getPath()
      Beschreibung aus Schnittstelle kopiert: IJavaElement
      Returns the path to the innermost resource enclosing this element. If this element is not included in an external library, the path returned is the full, absolute path to the underlying resource, relative to the workbench. If this element is included in an external library, the path returned is the absolute path to the archive or to the folder in the file system. This is a handle-only method.
      Angegeben von:
      getPath in Schnittstelle IJavaElement
      Gibt zurück:
      the path to the innermost resource enclosing this element
      Siehe auch:
    • getPerProjectInfo

      public JavaModelManager.PerProjectInfo getPerProjectInfo() throws JavaModelException
      Löst aus:
      JavaModelException
    • getProject

      public org.eclipse.core.resources.IProject getProject()
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the IProject on which this IJavaProject was created. This is handle-only method.
      Angegeben von:
      getProject in Schnittstelle IJavaProject
      Angegeben von:
      getProject in Schnittstelle org.eclipse.core.resources.IProjectNature
      Gibt zurück:
      the IProject on which this IJavaProject was created
      Siehe auch:
    • getJavaProject

      public JavaProject getJavaProject()
      Beschreibung aus Schnittstelle kopiert: IJavaElement
      Returns the Java project this element is contained in, or null if this element is not contained in any Java project (for instance, the IJavaModel is not contained in any Java project). This is a handle-only method.
      Angegeben von:
      getJavaProject in Schnittstelle IJavaElement
      Setzt außer Kraft:
      getJavaProject in Klasse JavaElement
      Gibt zurück:
      the containing Java project, or null if this element is not contained in a Java project
      Siehe auch:
    • getJavaModel

      public JavaModel getJavaModel()
      Beschreibung aus Schnittstelle kopiert: IJavaElement
      Returns the Java model. This is a handle-only method.
      Angegeben von:
      getJavaModel in Schnittstelle IJavaElement
      Setzt außer Kraft:
      getJavaModel in Klasse JavaElement
      Gibt zurück:
      the Java model
      Siehe auch:
    • getProjectCache

      @Deprecated public org.aspectj.org.eclipse.jdt.internal.core.JavaProjectElementInfo.ProjectCache getProjectCache() throws JavaModelException
      Veraltet.
      Löst aus:
      JavaModelException
    • getProjectCache

      public org.aspectj.org.eclipse.jdt.internal.core.JavaProjectElementInfo.ProjectCache getProjectCache(boolean excludeTestCode) throws JavaModelException
      Löst aus:
      JavaModelException
    • getRawClasspath

      public IClasspathEntry[] getRawClasspath() throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the raw classpath for the project, as a list of classpath entries. This corresponds to the exact set of entries which were assigned using setRawClasspath, in particular such a classpath may contain classpath variable and classpath container entries. Classpath variable and classpath container entries can be resolved using the helper method getResolvedClasspath; classpath variable entries also can be resolved individually using JavaCore#getClasspathVariable).

      Both classpath containers and classpath variables provides a level of indirection that can make the .classpath file stable across workspaces. As an example, classpath variables allow a classpath to no longer refer directly to external JARs located in some user specific location. The classpath can simply refer to some variables defining the proper locations of these external JARs. Similarly, classpath containers allows classpath entries to be computed dynamically by the plug-in that defines that kind of classpath container.

      Note that in case the project isn't yet opened, the classpath will be read directly from the associated .classpath file.

      Angegeben von:
      getRawClasspath in Schnittstelle IJavaProject
      Gibt zurück:
      the raw classpath for the project, as a list of classpath entries
      Löst aus:
      JavaModelException - if this element does not exist or if an exception occurs while accessing its corresponding resource
      Siehe auch:
    • getReferencedClasspathEntries

      public IClasspathEntry[] getReferencedClasspathEntries() throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the list of referenced classpath entries stored in the .classpath file of this java project. Clients can store the referenced classpath entries using IJavaProject.setRawClasspath(IClasspathEntry[], IClasspathEntry[], IPath, IProgressMonitor) If the client has not stored any referenced entries for this project, an empty array is returned.
      Angegeben von:
      getReferencedClasspathEntries in Schnittstelle IJavaProject
      Gibt zurück:
      an array of referenced classpath entries stored for this java project or an empty array if none stored earlier.
      Löst aus:
      JavaModelException
      Siehe auch:
    • getRequiredProjectNames

      public String[] getRequiredProjectNames() throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the names of the projects that are directly required by this project. A project is required if it is in its classpath.

      The project names are returned in the order they appear on the classpath.

      Angegeben von:
      getRequiredProjectNames in Schnittstelle IJavaProject
      Gibt zurück:
      the names of the projects that are directly required by this project in classpath order
      Löst aus:
      JavaModelException - if this element does not exist or if an exception occurs while accessing its corresponding resource
      Siehe auch:
    • getResolvedClasspath

      public IClasspathEntry[] getResolvedClasspath() throws JavaModelException
      Löst aus:
      JavaModelException
    • getResolvedClasspath

      public IClasspathEntry[] getResolvedClasspath(boolean ignoreUnresolvedEntry) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      This is a helper method returning the resolved classpath for the project as a list of simple (non-variable, non-container) classpath entries. All classpath variable and classpath container entries in the project's raw classpath will be replaced by the simple classpath entries they resolve to.

      The resulting resolved classpath is accurate for the given point in time. If the project's raw classpath is later modified, or if classpath variables are changed, the resolved classpath can become out of date. Because of this, hanging on resolved classpath is not recommended.

      Note that if the resolution creates duplicate entries (i.e. entries which are Object.equals(Object)), only the first one is added to the resolved classpath.

      Angegeben von:
      getResolvedClasspath in Schnittstelle IJavaProject
      Parameter:
      ignoreUnresolvedEntry - indicates how to handle unresolvable variables and containers; true indicates that missing variables and unresolvable classpath containers should be silently ignored, and that the resulting list should consist only of the entries that could be successfully resolved; false indicates that a JavaModelException should be thrown for the first unresolved variable or container
      Gibt zurück:
      the resolved classpath for the project as a list of simple classpath entries, where all classpath variable and container entries have been resolved and substituted with their final target entries
      Löst aus:
      JavaModelException - in one of the corresponding situation:
      • this element does not exist
      • an exception occurs while accessing its corresponding resource
      • a classpath variable or classpath container was not resolvable and ignoreUnresolvedEntry is false.
      Siehe auch:
    • resource

      public org.eclipse.core.resources.IResource resource(PackageFragmentRoot root)
      Angegeben von:
      resource in Klasse Openable
      Siehe auch:
    • getSharedProperty

      public String getSharedProperty(String key) throws org.eclipse.core.runtime.CoreException
      Retrieve a shared property on a project. If the property is not defined, answers null. Note that it is orthogonal to IResource persistent properties, and client code has to decide which form of storage to use appropriately. Shared properties produce real resource files which can be shared through a VCM onto a server. Persistent properties are not shareable.
      Parameter:
      key - String
      Gibt zurück:
      String
      Löst aus:
      org.eclipse.core.runtime.CoreException
      Siehe auch:
    • getSourceMapper

      public SourceMapper getSourceMapper()
      Beschreibung aus Klasse kopiert: JavaElement
      Returns the SourceMapper facility for this element, or null if this element does not have a SourceMapper.
      Setzt außer Kraft:
      getSourceMapper in Klasse JavaElement
      Siehe auch:
    • getUnderlyingResource

      public org.eclipse.core.resources.IResource getUnderlyingResource() throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaElement
      Returns the smallest underlying resource that contains this element, or null if this element is not contained in a resource.
      Angegeben von:
      getUnderlyingResource in Schnittstelle IJavaElement
      Setzt außer Kraft:
      getUnderlyingResource in Klasse Openable
      Gibt zurück:
      the underlying resource, or null if none
      Löst aus:
      JavaModelException - if this element does not exist or if an exception occurs while accessing its underlying resource
      Siehe auch:
    • hasBuildState

      public boolean hasBuildState()
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns whether this project has been built at least once and thus whether it has a build state.
      Angegeben von:
      hasBuildState in Schnittstelle IJavaProject
      Gibt zurück:
      true if this project has been built at least once, false otherwise
      Siehe auch:
    • hasClasspathCycle

      public boolean hasClasspathCycle(IClasspathEntry[] preferredClasspath)
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns whether setting this project's classpath to the given classpath entries would result in a cycle. If the set of entries contains some variables, those are resolved in order to determine cycles.
      Angegeben von:
      hasClasspathCycle in Schnittstelle IJavaProject
      Parameter:
      preferredClasspath - the given classpath entries
      Gibt zurück:
      true if the given classpath entries would result in a cycle, false otherwise
      Siehe auch:
    • hasCycleMarker

      public boolean hasCycleMarker()
    • hashCode

      public int hashCode()
      Beschreibung aus Klasse kopiert: JavaElement
      Returns the hash code for this Java element. By default, the hash code for an element is a combination of its name and parent's hash code. Elements with other requirements must override this method.
      Setzt außer Kraft:
      hashCode in Klasse JavaElement
    • hasSource

      public boolean hasSource()
      Answers true if the project potentially contains any source. A project which has no source is immutable.
      Gibt zurück:
      boolean
    • isOnClasspath

      public boolean isOnClasspath(IJavaElement element)
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns whether the given element is on the classpath of this project, that is, referenced from a classpath entry and not explicitly excluded using an exclusion pattern.
      Angegeben von:
      isOnClasspath in Schnittstelle IJavaProject
      Parameter:
      element - the given element
      Gibt zurück:
      true if the given element is on the classpath of this project, false otherwise
      Siehe auch:
    • isOnClasspath

      public boolean isOnClasspath(org.eclipse.core.resources.IResource resource)
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns whether the given resource is on the classpath of this project, that is, referenced from a classpath entry and not explicitly excluded using an exclusion pattern.
      Angegeben von:
      isOnClasspath in Schnittstelle IJavaProject
      Parameter:
      resource - the given resource
      Gibt zurück:
      true if the given resource is on the classpath of this project, false otherwise
      Siehe auch:
    • findContainingClasspathEntry

      public IClasspathEntry findContainingClasspathEntry(org.eclipse.core.resources.IResource resource)
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the class path entry which contains the given resource and not explicitly excluded using an exclusion pattern, or null otherwise.
      Angegeben von:
      findContainingClasspathEntry in Schnittstelle IJavaProject
      Parameter:
      resource - the resource which may or may not on one of the class path entries.
      Gibt zurück:
      the class path entry which contains the given resource, or null, if it's not in any of the classpath entries, or the resource is null.
    • newEvaluationContext

      public IEvaluationContext newEvaluationContext()
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Creates a new evaluation context.
      Angegeben von:
      newEvaluationContext in Schnittstelle IJavaProject
      Gibt zurück:
      a new evaluation context.
      Siehe auch:
    • newNameLookup

      public NameLookup newNameLookup(ICompilationUnit[] workingCopies) throws JavaModelException
      Löst aus:
      JavaModelException
    • newNameLookup

      public NameLookup newNameLookup(ICompilationUnit[] workingCopies, boolean excludeTestCode) throws JavaModelException
      Löst aus:
      JavaModelException
    • newNameLookup

      public NameLookup newNameLookup(WorkingCopyOwner owner) throws JavaModelException
      Löst aus:
      JavaModelException
    • newNameLookup

      public NameLookup newNameLookup(WorkingCopyOwner owner, boolean excludeTestCode) throws JavaModelException
      Löst aus:
      JavaModelException
    • newSearchableNameEnvironment

      public SearchableEnvironment newSearchableNameEnvironment(ICompilationUnit[] workingCopies) throws JavaModelException
      Löst aus:
      JavaModelException
    • newSearchableNameEnvironment

      public SearchableEnvironment newSearchableNameEnvironment(ICompilationUnit[] workingCopies, boolean excludeTestCode) throws JavaModelException
      Löst aus:
      JavaModelException
    • newSearchableNameEnvironment

      public SearchableEnvironment newSearchableNameEnvironment(WorkingCopyOwner owner) throws JavaModelException
      Löst aus:
      JavaModelException
    • newSearchableNameEnvironment

      public SearchableEnvironment newSearchableNameEnvironment(WorkingCopyOwner owner, boolean excludeTestCode) throws JavaModelException
      Löst aus:
      JavaModelException
    • newTemporaryInfo

      public JavaModelManager.PerProjectInfo newTemporaryInfo()
    • newTypeHierarchy

      public ITypeHierarchy newTypeHierarchy(IRegion region, org.eclipse.core.runtime.IProgressMonitor monitor) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Creates and returns a type hierarchy for all types in the given region, considering subtypes within that region.
      Angegeben von:
      newTypeHierarchy in Schnittstelle IJavaProject
      Parameter:
      region - the given region
      monitor - the given progress monitor
      Gibt zurück:
      a type hierarchy for all types in the given region, considering subtypes within that region
      Löst aus:
      JavaModelException - if this element does not exist or if an exception occurs while accessing its corresponding resource
      Siehe auch:
    • newTypeHierarchy

      public ITypeHierarchy newTypeHierarchy(IRegion region, WorkingCopyOwner owner, org.eclipse.core.runtime.IProgressMonitor monitor) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Creates and returns a type hierarchy for all types in the given region, considering subtypes within that region and considering types in the working copies with the given owner. In other words, the owner's working copies will take precedence over their original compilation units in the workspace.

      Note that if a working copy is empty, it will be as if the original compilation unit had been deleted.

      Angegeben von:
      newTypeHierarchy in Schnittstelle IJavaProject
      Parameter:
      region - the given region
      owner - the owner of working copies that take precedence over their original compilation units
      monitor - the given progress monitor
      Gibt zurück:
      a type hierarchy for all types in the given region, considering subtypes within that region
      Löst aus:
      JavaModelException - if this element does not exist or if an exception occurs while accessing its corresponding resource
      Siehe auch:
    • newTypeHierarchy

      public ITypeHierarchy newTypeHierarchy(IType type, IRegion region, org.eclipse.core.runtime.IProgressMonitor monitor) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Creates and returns a type hierarchy for the given type considering subtypes in the specified region.
      Angegeben von:
      newTypeHierarchy in Schnittstelle IJavaProject
      Parameter:
      type - the given type
      region - the given region
      monitor - the given monitor
      Gibt zurück:
      a type hierarchy for the given type considering subtypes in the specified region
      Löst aus:
      JavaModelException - if this element does not exist or if an exception occurs while accessing its corresponding resource
      Siehe auch:
    • newTypeHierarchy

      public ITypeHierarchy newTypeHierarchy(IType type, IRegion region, WorkingCopyOwner owner, org.eclipse.core.runtime.IProgressMonitor monitor) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Creates and returns a type hierarchy for the given type considering subtypes in the specified region and considering types in the working copies with the given owner. In other words, the owner's working copies will take precedence over their original compilation units in the workspace.

      Note that if a working copy is empty, it will be as if the original compilation unit had been deleted.

      Angegeben von:
      newTypeHierarchy in Schnittstelle IJavaProject
      Parameter:
      type - the given type
      region - the given region
      owner - the owner of working copies that take precedence over their original compilation units
      monitor - the given monitor
      Gibt zurück:
      a type hierarchy for the given type considering subtypes in the specified region
      Löst aus:
      JavaModelException - if this element does not exist or if an exception occurs while accessing its corresponding resource
      Siehe auch:
    • projectPrerequisites

      public String[] projectPrerequisites(IClasspathEntry[] resolvedClasspath) throws JavaModelException
      Löst aus:
      JavaModelException
    • readFileEntriesWithException

      public IClasspathEntry[][] readFileEntriesWithException(Map unknownElements) throws org.eclipse.core.runtime.CoreException, IOException, ClasspathEntry.AssertionFailedException
      Reads the classpath file entries of this project's .classpath file. Returns a two-dimensional array, where the number of elements in the row is fixed to 2. The first element is an array of raw classpath entries, which includes the output entry, and the second element is an array of referenced entries that may have been stored by the client earlier. See IJavaProject.getReferencedClasspathEntries() for more details. As a side effect, unknown elements are stored in the given map (if not null) Throws exceptions if the file cannot be accessed or is malformed.
      Löst aus:
      org.eclipse.core.runtime.CoreException
      IOException
      ClasspathEntry.AssertionFailedException
    • readOutputLocation

      public org.eclipse.core.runtime.IPath readOutputLocation()
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the default output location for the project as defined by its .classpath file from disk, or null if unable to read the file.

      This output location may differ from the in-memory one returned by getOutputLocation, in case the automatic reconciliation mechanism has not been performed yet. Usually, any change to the .classpath file is automatically noticed and reconciled at the next resource change notification event. However, if the file is modified within an operation, where this change needs to be taken into account before the operation ends, then the output location from disk can be read using this method, and further assigned to the project using setRawClasspath(...).

      The default output location is where class files are ordinarily generated (and resource files, copied). Each source classpath entry can also specify an output location for the generated class files (and copied resource files) corresponding to compilation units under that source folder. This makes it possible to arrange generated class files for different source folders in different output folders, and not necessarily the default output folder. This means that the generated class files for the project may end up scattered across several folders, rather than all in the default output folder (which is more standard).

      In order to manually force a project classpath refresh, one can simply assign the project classpath using the result of this method, as follows: proj.setRawClasspath(proj.readRawClasspath(), proj.readOutputLocation(), monitor) (note that the readRawClasspath/readOutputLocation methods could return null).

      Angegeben von:
      readOutputLocation in Schnittstelle IJavaProject
      Gibt zurück:
      the workspace-relative absolute path of the default output folder
      Siehe auch:
    • readRawClasspath

      public IClasspathEntry[] readRawClasspath()
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the raw classpath for the project as defined by its .classpath file from disk, or null if unable to read the file.

      This classpath may differ from the in-memory classpath returned by getRawClasspath, in case the automatic reconciliation mechanism has not been performed yet. Usually, any change to the .classpath file is automatically noticed and reconciled at the next resource change notification event. However, if the file is modified within an operation, where this change needs to be taken into account before the operation ends, then the classpath from disk can be read using this method, and further assigned to the project using setRawClasspath(...).

      Classpath variable and classpath container entries can be resolved using the helper method getResolvedClasspath; classpath variable entries also can be resolved individually using JavaCore#getClasspathVariable).

      Note that no check is performed whether the project has the Java nature set, allowing an existing .classpath file to be considered independantly (unlike getRawClasspath which requires the Java nature to be associated with the project).

      In order to manually force a project classpath refresh, one can simply assign the project classpath using the result of this method, as follows: proj.setRawClasspath(proj.readRawClasspath(), proj.readOutputLocation(), monitor) (note that the readRawClasspath/readOutputLocation methods could return null).

      Angegeben von:
      readRawClasspath in Schnittstelle IJavaProject
      Gibt zurück:
      the raw classpath from disk for the project, as a list of classpath entries
      Siehe auch:
    • removeFromBuildSpec

      protected void removeFromBuildSpec(String builderID) throws org.eclipse.core.runtime.CoreException
      Removes the given builder from the build spec for the given project.
      Löst aus:
      org.eclipse.core.runtime.CoreException
    • resetCaches

      public void resetCaches()
    • resetResolvedClasspath

      public ClasspathChange resetResolvedClasspath()
    • resolveClasspath

      public IClasspathEntry[] resolveClasspath(IClasspathEntry[] rawClasspath) throws JavaModelException
      Löst aus:
      JavaModelException
    • resolveClasspath

      public org.aspectj.org.eclipse.jdt.internal.core.JavaProject.ResolvedClasspath resolveClasspath(IClasspathEntry[] rawClasspath, boolean usePreviousSession, boolean resolveChainedLibraries) throws JavaModelException
      Löst aus:
      JavaModelException
    • resolveClasspath

      public org.aspectj.org.eclipse.jdt.internal.core.JavaProject.ResolvedClasspath resolveClasspath(IClasspathEntry[] rawClasspath, IClasspathEntry[] referencedEntries, boolean usePreviousSession, boolean resolveChainedLibraries) throws JavaModelException
      Löst aus:
      JavaModelException
    • resolveClasspath

      public void resolveClasspath(JavaModelManager.PerProjectInfo perProjectInfo, boolean usePreviousSession, boolean addClasspathChange) throws JavaModelException
      Löst aus:
      JavaModelException
    • rootID

      public String rootID()
      Answers an ID which is used to distinguish project/entries during package fragment root computations
      Gibt zurück:
      String
    • writeFileEntries

      public boolean writeFileEntries(IClasspathEntry[] newClasspath, IClasspathEntry[] referencedEntries, org.eclipse.core.runtime.IPath newOutputLocation) throws JavaModelException
      Writes the classpath in a sharable format (VCM-wise) only when necessary, that is, if it is semantically different from the existing one in file. Will never write an identical one.
      Parameter:
      newClasspath - IClasspathEntry[]
      newOutputLocation - IPath
      Gibt zurück:
      boolean Return whether the .classpath file was modified.
      Löst aus:
      JavaModelException
    • writeFileEntries

      public boolean writeFileEntries(IClasspathEntry[] newClasspath, org.eclipse.core.runtime.IPath newOutputLocation) throws JavaModelException
      Löst aus:
      JavaModelException
    • setOption

      public void setOption(String optionName, String optionValue)
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Helper method for setting one option value only.

      Equivalent to:

              Map options = this.getOptions(false);
              map.put(optionName, optionValue);
              this.setOptions(map)
        

      For a complete description of the configurable options, see JavaCore#getDefaultOptions.

      Angegeben von:
      setOption in Schnittstelle IJavaProject
      Parameter:
      optionName - the name of an option
      optionValue - the value of the option to set. If null, then the option is removed from project preferences.
      Siehe auch:
      • Ungültige Referenz
        org.eclipse.jdt.core.IJavaProject#setOption(java.lang.String, java.lang.String)
    • setOptions

      public void setOptions(Map<String,String> newOptions)
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Sets the project custom options. All and only the options explicitly included in the given table are remembered; all previous option settings are forgotten, including ones not explicitly mentioned.

      For a complete description of the configurable options, see JavaCore#getDefaultOptions.

      Angegeben von:
      setOptions in Schnittstelle IJavaProject
      Parameter:
      newOptions - the new options (key type: String; value type: String), or null to flush all custom options (clients will automatically get the global JavaCore options).
      Siehe auch:
      • Ungültige Referenz
        org.eclipse.jdt.core.IJavaProject#setOptions(Map)
    • setOutputLocation

      public void setOutputLocation(org.eclipse.core.runtime.IPath path, org.eclipse.core.runtime.IProgressMonitor monitor) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Sets the default output location of this project to the location described by the given workspace-relative absolute path.

      The default output location is where class files are ordinarily generated (and resource files, copied). Each source classpath entries can also specify an output location for the generated class files (and copied resource files) corresponding to compilation units under that source folder. This makes it possible to arrange that generated class files for different source folders to end up in different output folders, and not necessarily the default output folder. This means that the generated class files for the project may end up scattered across several folders, rather than all in the default output folder (which is more standard).

      Angegeben von:
      setOutputLocation in Schnittstelle IJavaProject
      Parameter:
      path - the workspace-relative absolute path of the default output folder
      monitor - the progress monitor
      Löst aus:
      JavaModelException - if the classpath could not be set. Reasons include:
      • This Java element does not exist (ELEMENT_DOES_NOT_EXIST)
      • The path refers to a location not contained in this project (PATH_OUTSIDE_PROJECT)
      • The path is not an absolute path (RELATIVE_PATH)
      • The path is nested inside a package fragment root of this project (INVALID_PATH)
      • The output location is being modified during resource change event notification (CORE_EXCEPTION)
      Siehe auch:
    • setProject

      public void setProject(org.eclipse.core.resources.IProject project)
      Sets the underlying kernel project of this Java project, and fills in its parent and name. Called by IProject.getNature().
      Angegeben von:
      setProject in Schnittstelle org.eclipse.core.resources.IProjectNature
      Siehe auch:
      • IProjectNature.setProject(IProject)
    • setRawClasspath

      public void setRawClasspath(IClasspathEntry[] entries, boolean canModifyResources, org.eclipse.core.runtime.IProgressMonitor monitor) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Sets the classpath of this project using a list of classpath entries. In particular such a classpath may contain classpath variable entries. Classpath variable entries can be resolved individually (JavaCore.getClasspathVariable(String)), or the full classpath can be resolved at once using the helper method IJavaProject.getResolvedClasspath(boolean).

      A classpath variable provides an indirection level for better sharing a classpath. As an example, it allows a classpath to no longer refer directly to external JARs located in some user specific location. The classpath can simply refer to some variables defining the proper locations of these external JARs.

      If it is specified that this operation cannot modify resources, the .classpath file will not be written to disk and no error marker will be generated. To synchronize the .classpath with the in-memory classpath, one can use setRawClasspath(readRawClasspath(), true, monitor).

      Setting the classpath to null specifies a default classpath (the project root). Setting the classpath to an empty array specifies an empty classpath.

      If a cycle is detected while setting this classpath (and if resources can be modified), an error marker will be added to the project closing the cycle. To avoid this problem, use IJavaProject.hasClasspathCycle(IClasspathEntry[]) before setting the classpath.

      This operation acquires a lock on the workspace's root.

      Angegeben von:
      setRawClasspath in Schnittstelle IJavaProject
      Parameter:
      entries - a list of classpath entries
      canModifyResources - whether resources should be written to disk if needed
      monitor - the given progress monitor
      Löst aus:
      JavaModelException - if the classpath could not be set. Reasons include:
      Siehe auch:
    • setRawClasspath

      public void setRawClasspath(IClasspathEntry[] newRawClasspath, org.eclipse.core.runtime.IPath newOutputLocation, boolean canModifyResources, org.eclipse.core.runtime.IProgressMonitor monitor) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Sets both the classpath of this project and its default output location at once. The classpath is defined using a list of classpath entries. In particular such a classpath may contain classpath variable entries. Classpath variable entries can be resolved individually (JavaCore.getClasspathVariable(String)), or the full classpath can be resolved at once using the helper method IJavaProject.getResolvedClasspath(boolean).

      A classpath variable provides an indirection level for better sharing a classpath. As an example, it allows a classpath to no longer refer directly to external JARs located in some user specific location. The classpath can simply refer to some variables defining the proper locations of these external JARs.

      If it is specified that this operation cannot modify resources, the .classpath file will not be written to disk and no error marker will be generated. To synchronize the .classpath with the in-memory classpath, one can use setRawClasspath(readRawClasspath(), true, monitor).

      Setting the classpath to null specifies a default classpath (the project root). Setting the classpath to an empty array specifies an empty classpath.

      If a cycle is detected while setting this classpath (and if resources can be modified), an error marker will be added to the project closing the cycle. To avoid this problem, use IJavaProject.hasClasspathCycle(IClasspathEntry[]) before setting the classpath.

      This operation acquires a lock on the workspace's root.

      Angegeben von:
      setRawClasspath in Schnittstelle IJavaProject
      Parameter:
      newRawClasspath - a list of classpath entries
      newOutputLocation - the default output location
      canModifyResources - whether resources should be written to disk if needed
      monitor - the given progress monitor
      Löst aus:
      JavaModelException - if the classpath could not be set. Reasons include:
      Siehe auch:
    • setRawClasspath

      public void setRawClasspath(IClasspathEntry[] entries, org.eclipse.core.runtime.IPath outputLocation, org.eclipse.core.runtime.IProgressMonitor monitor) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Sets the both the classpath of this project and its default output location at once. The classpath is defined using a list of classpath entries. In particular, such a classpath may contain classpath variable entries. Classpath variable entries can be resolved individually (see (JavaCore.getClasspathVariable(String)), or the full classpath can be resolved at once using the helper method IJavaProject.getResolvedClasspath(boolean).

      A classpath variable provides an indirection level for better sharing a classpath. As an example, it allows a classpath to no longer refer directly to external JARs located in some user specific location. The classpath can simply refer to some variables defining the proper locations of these external JARs.

      Setting the classpath to null specifies a default classpath (the project root). Setting the classpath to an empty array specifies an empty classpath.

      If a cycle is detected while setting this classpath, an error marker will be added to the project closing the cycle. To avoid this problem, use IJavaProject.hasClasspathCycle(IClasspathEntry[]) before setting the classpath.

      This operation acquires a lock on the workspace's root.

      Angegeben von:
      setRawClasspath in Schnittstelle IJavaProject
      Parameter:
      entries - a list of classpath entries
      outputLocation - the default output location
      monitor - the progress monitor
      Löst aus:
      JavaModelException - if the classpath could not be set. Reasons include:
      • This Java element does not exist (ELEMENT_DOES_NOT_EXIST)
      • Two or more entries specify source roots with the same or overlapping paths (NAME_COLLISION)
      • A entry of kind CPE_PROJECT refers to this project (INVALID_PATH)
      • This Java element does not exist (ELEMENT_DOES_NOT_EXIST)
      • The output location path refers to a location not contained in this project (PATH_OUTSIDE_PROJECT)
      • The output location path is not an absolute path (RELATIVE_PATH)
      • The output location path is nested inside a package fragment root of this project (INVALID_PATH)
      • The classpath is being modified during resource change event notification (CORE_EXCEPTION)
      Siehe auch:
    • setRawClasspath

      public void setRawClasspath(IClasspathEntry[] entries, IClasspathEntry[] referencedEntries, org.eclipse.core.runtime.IPath outputLocation, org.eclipse.core.runtime.IProgressMonitor monitor) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Works similar to IJavaProject.setRawClasspath(IClasspathEntry[], IPath, IProgressMonitor) and additionally allows persisting the given array of referenced entries for this project. The referenced entries and their attributes are stored in the .classpath file of this project. For details on referenced entries, see JavaCore.getReferencedClasspathEntries(IClasspathEntry, IJavaProject) and IClasspathEntry.getReferencingEntry().

      Since the referenced entries are stored in the .classpath file, clients can store additional information that belong to these entries and retrieve them across sessions, though the referenced entries themselves may not be present in the raw classpath. By passing a null referencedEntries, clients can choose not to modify the already persisted referenced entries, which is fully equivalent to IJavaProject.setRawClasspath(IClasspathEntry[], IPath, IProgressMonitor). If an empty array is passed as referencedEntries, the already persisted referenced entries, if any, will be cleared.

      If there are duplicates of a referenced entry or if any of the referencedEntries is already present in the raw classpath(entries) those referenced entries will be excluded and not be persisted.

      Angegeben von:
      setRawClasspath in Schnittstelle IJavaProject
      Parameter:
      entries - a list of classpath entries
      referencedEntries - the list of referenced classpath entries to be persisted
      outputLocation - the default output location
      monitor - the given progress monitor
      Löst aus:
      JavaModelException - if the classpath could not be set. Reasons include:
      Siehe auch:
    • setRawClasspath

      protected void setRawClasspath(IClasspathEntry[] newRawClasspath, IClasspathEntry[] referencedEntries, org.eclipse.core.runtime.IPath newOutputLocation, boolean canModifyResources, org.eclipse.core.runtime.IProgressMonitor monitor) throws JavaModelException
      Löst aus:
      JavaModelException
    • setRawClasspath

      public void setRawClasspath(IClasspathEntry[] entries, org.eclipse.core.runtime.IProgressMonitor monitor) throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Sets the classpath of this project using a list of classpath entries. In particular such a classpath may contain classpath variable entries. Classpath variable entries can be resolved individually (JavaCore.getClasspathVariable(String)), or the full classpath can be resolved at once using the helper method IJavaProject.getResolvedClasspath(boolean).

      A classpath variable provides an indirection level for better sharing a classpath. As an example, it allows a classpath to no longer refer directly to external JARs located in some user specific location. The classpath can simply refer to some variables defining the proper locations of these external JARs.

      Setting the classpath to null specifies a default classpath (the project root). Setting the classpath to an empty array specifies an empty classpath.

      If a cycle is detected while setting this classpath, an error marker will be added to the project closing the cycle. To avoid this problem, use IJavaProject.hasClasspathCycle(IClasspathEntry[]) before setting the classpath.

      This operation acquires a lock on the workspace's root.

      Angegeben von:
      setRawClasspath in Schnittstelle IJavaProject
      Parameter:
      entries - a list of classpath entries
      monitor - the given progress monitor
      Löst aus:
      JavaModelException - if the classpath could not be set. Reasons include:
      Siehe auch:
    • setSharedProperty

      public void setSharedProperty(String key, String value) throws org.eclipse.core.runtime.CoreException
      Record a shared persistent property onto a project. Note that it is orthogonal to IResource persistent properties, and client code has to decide which form of storage to use appropriately. Shared properties produce real resource files which can be shared through a VCM onto a server. Persistent properties are not shareable.

      Shared properties end up in resource files, and thus cannot be modified during delta notifications (a CoreException would then be thrown).

      Parameter:
      key - String
      value - String
      Löst aus:
      org.eclipse.core.runtime.CoreException
      Siehe auch:
    • updateCycleParticipants

      public void updateCycleParticipants(List<org.eclipse.core.runtime.IPath> prereqChain, LinkedHashSet cycleParticipants, Map<org.eclipse.core.runtime.IPath,List<org.aspectj.org.eclipse.jdt.internal.core.JavaProject.CycleInfo>> cyclesPerProject, org.eclipse.core.resources.IWorkspaceRoot workspaceRoot, HashSet traversed, Map preferredClasspaths)
      If a cycle is detected, then cycleParticipants contains all the paths of projects involved in this cycle (directly and indirectly), no cycle if the set is empty (and started empty)
      Parameter:
      prereqChain - ArrayList
      cycleParticipants - HashSet
      workspaceRoot - IWorkspaceRoot
      traversed - HashSet
      preferredClasspaths - Map
    • validateExistence

      protected org.eclipse.core.runtime.IStatus validateExistence(org.eclipse.core.resources.IResource underlyingResource)
      Angegeben von:
      validateExistence in Klasse Openable
    • getModuleDescription

      public IModuleDescription getModuleDescription() throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the IModuleDescription this project represents or null if the Java project doesn't represent any named module. A Java project is said to represent a module if any of its source package fragment roots (see IPackageFragmentRoot.K_SOURCE) contains a valid Java module descriptor, or if one of its classpath entries has a valid IClasspathAttribute.PATCH_MODULE attribute affecting the current project. In the latter case the corresponding module description of the location referenced by that classpath entry is returned.
      Angegeben von:
      getModuleDescription in Schnittstelle IJavaProject
      Gibt zurück:
      the IModuleDescription this project represents.
      Löst aus:
      JavaModelException - if this element does not exist or if an exception occurs while accessing its corresponding resource
    • getOwnModuleDescription

      public IModuleDescription getOwnModuleDescription() throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      Returns the IModuleDescription owned by this project or null if the Java project doesn't own a valid Java module descriptor. This method considers only module descriptions contained in any of the project's source package fragment roots (see IPackageFragmentRoot.K_SOURCE). In particular any IClasspathAttribute.PATCH_MODULE attribute is not considered.
      Angegeben von:
      getOwnModuleDescription in Schnittstelle IJavaProject
      Gibt zurück:
      the IModuleDescription this project owns.
      Löst aus:
      JavaModelException - if this element does not exist or if an exception occurs while accessing its corresponding resource
      JavaModelException
    • getPatchedModules

      public List<String> getPatchedModules(IClasspathEntry cpEntry)
    • getAutomaticModuleDescription

      public IModuleDescription getAutomaticModuleDescription() throws JavaModelException
      Löst aus:
      JavaModelException
    • setModuleDescription

      public void setModuleDescription(IModuleDescription module) throws JavaModelException
      Löst aus:
      JavaModelException
    • getManifest

      public Manifest getManifest()
    • determineModulesOfProjectsWithNonEmptyClasspath

      public Set<String> determineModulesOfProjectsWithNonEmptyClasspath() throws JavaModelException
      Beschreibung aus Schnittstelle kopiert: IJavaProject
      When compiling test code in a modular project that has non-source classpath entries which don't have the IClasspathAttribute.MODULE set, the module is assumed to read the unnamed module (which is useful for test-only dependencies that should not be mentioned in the module-info.java). When executing test code that was compiled like this, corresponding "--add-reads" options need to be passed to the java runtime. This method returns the list of modules on the project's classpath for which this is the case.
      Angegeben von:
      determineModulesOfProjectsWithNonEmptyClasspath in Schnittstelle IJavaProject
      Gibt zurück:
      the set of module names
      Löst aus:
      JavaModelException - when access to the classpath or module description of the given project fails.