org.eclipse.jdt.core

## Interface IClasspathAttribute

    public interface IClasspathAttribute

A classpath attribute defines a name/value pair that can be persisted with a classpath entry. Such an attribute can be created using the factory method `newClasspathAttribute(String name, String value)`.

Since:
  3.1
See Also:
  `JavaCore.newContainerEntry( org.eclipse.core.runtime.IPath containerPath, IAccessRule[] accessRules, IClasspathAttribute[] extraAttributes, boolean isExported)`, `JavaCore.newLibraryEntry( org.eclipse.core.runtime.IPath path, org.eclipse.core.runtime.IPath sourceAttachmentPath, org.eclipse.core.runtime.IPath sourceAttachmentRootPath, IAccessRule[] accessRules, IClasspathAttribute[] extraAttributes, boolean isExported)`, `JavaCore.newProjectEntry( org.eclipse.core.runtime.IPath path, IAccessRule[] accessRules, boolean combineAccessRestrictions, IClasspathAttribute[] extraAttributes, boolean isExported)`, `JavaCore.newSourceEntry( org.eclipse.core.runtime.IPath path, org.eclipse.core.runtime.IPath[] inclusionPatterns, org.eclipse.core.runtime.IPath[] exclusionPatterns, org.eclipse.core.runtime.IPath specificOutputLocation, IClasspathAttribute[] extraAttributes)`, `JavaCore.newVariableEntry( org.eclipse.core.runtime.IPath variablePath, org.eclipse.core.runtime.IPath variableSourceAttachmentPath, org.eclipse.core.runtime.IPath variableSourceAttachmentRootPath, IAccessRule[] accessRules, IClasspathAttribute[] extraAttributes, boolean isExported)`
Restriction:
  This interface is not intended to be implemented by clients.

### Field Summary

Fields
`static String` `EXTERNAL_ANNOTATION_PATH` Constant for the name of the external annotation path attribute.
`static String` `IGNORE_OPTIONAL_PROBLEMS` Constant for the name of the ignore optional compile problems attribute.
`static String` `INDEX_LOCATION_ATTRIBUTE_NAME` Constant for the name of the index location attribute.
`static String` `JAVADOC_LOCATION_ATTRIBUTE_NAME` Constant for the name of the javadoc location attribute.
`static String` `OPTIONAL` Constant for the name of the optional attribute.
`static String` `SOURCE_ATTACHMENT_ENCODING` Constant for the name of the encoding to be used for source attachments.

### Method Summary

All Methods Instance Methods Abstract Methods
`String` `getName()` Returns the name of this classpath attribute.
`String` `getValue()` Returns the value of this classpath attribute.

### Field Detail

#### JAVADOC_LOCATION_ATTRIBUTE_NAME

    static final String JAVADOC_LOCATION_ATTRIBUTE_NAME

Constant for the name of the javadoc location attribute.

The value for this attribute has to be the string representation of a URL.

Since:
  3.1
See Also:
  Constant Field Values

#### INDEX_LOCATION_ATTRIBUTE_NAME

    static final String INDEX_LOCATION_ATTRIBUTE_NAME

Constant for the name of the index location attribute.

The value for this attribute has to be the string representation of a URL. It should point to an existing index file in a folder or a jar. The URL can also be of platform protocol.

Since:
  3.8
See Also:
  Constant Field Values

#### SOURCE_ATTACHMENT_ENCODING

    static final String SOURCE_ATTACHMENT_ENCODING

Constant for the name of the encoding to be used for source attachments.

The value of this attribute has to be a string representation of a valid encoding. The encoding for a source attachment is determined in the following order:

- Encoding explicitly set on the source file (java or zip), i.e. `org.eclipse.core.resources.IFile#getCharset(false)`
- Encoding set on the corresponding classpath entry
- If the source attachment is a folder, then the encoding determined by the file content if detectable
- If the source attachment is in the workspace, then the encoding of the enclosing resources

Since:
  3.8
See Also:
  `IFile.getCharset()`, Constant Field Values

#### IGNORE_OPTIONAL_PROBLEMS

    static final String IGNORE_OPTIONAL_PROBLEMS

Constant for the name of the ignore optional compile problems attribute. This attribute is valid only for classpath entries describing source folders. The possible values for this attribute are `"true"` or `"false"`. When not present, `"false"` is assumed. If the value of this attribute is `"true"`, all optional problems from the source folder described by this classpath entry will not be reported by the compiler.

Since:
  3.8
See Also:
  Constant Field Values

#### OPTIONAL

    static final String OPTIONAL

Constant for the name of the optional attribute. The possible values for this attribute are `"true"` or `"false"`. When not present, `"false"` is assumed. If the value of this attribute is `"true"`, the classpath entry is optional. If the underlying resource or jar file doesn't exist, no error is reported and the classpath entry is ignored.

Since:
  3.2
See Also:
  Constant Field Values

#### EXTERNAL_ANNOTATION_PATH

    static final String EXTERNAL_ANNOTATION_PATH

Constant for the name of the external annotation path attribute.

The value for this attribute has to be the string representation of a path. It should point to an existing directory where external annotations can be found to support annotation based null analysis involving 3rd party libraries.

Since:
  3.11
See Also:
  Constant Field Values

### Method Detail

#### getName

    String getName()

Returns the name of this classpath attribute.

Returns:
  the name of this classpath attribute.
Since:
  3.1

#### getValue

    String getValue()

Returns the value of this classpath attribute.

Returns:
  the value of this classpath attribute.
Since:
  3.1