Eclipse Platform Release 3.7

## org.eclipse.core.resources
Interface IBuildConfiguration

All Superinterfaces:
  IAdaptable

    public interface IBuildConfiguration

extends IAdaptable

Build Configurations provide a mechanism for orthogonal configuration specific builds within a single project. The resources plugin maintains build deltas per interested builder, per configuration, and allow build configurations to reference each other.

All projects have at least one build configuration. By default this has name `DEFAULT_CONFIG_NAME`. One configuration in the project is defined to be 'active'. The active configuration is built by default. If unset, the active configuration defaults to the first configuration in the project.

Build configurations are created and set on the project description using: `IProjectDescription.setBuildConfigs(String[])`. Build configurations set on Projects must have unique non-null names.

When a project is built, a specific configuration is built. This configuration is passed to the builders so they can adapt their behavior appropriately. Builders which don't care about configurations may ignore this, and work as before.

Build configuration can reference other builds configurations. These references are created using `IWorkspace.newBuildConfig(String, String)`, and set on the referencing project with `IProjectDescription.setBuildConfigReferences(String, IBuildConfiguration[])`. A referenced build configuration may have a `null` configuration name which is resolved to the referenced project's current active build configuration at build time.

Workspace build will ensure that the projects are built in an appropriate order as defined by the reference graph.

Since:
  3.7
See Also:
  `IWorkspace.newBuildConfig(String, String)`, `IProjectDescription.setActiveBuildConfig(String)`, `IProjectDescription.setBuildConfigs(String[])`, `IProjectDescription.setBuildConfigReferences(String, IBuildConfiguration[])`
Restriction:
  This interface is not intended to be implemented by clients.
Restriction:
  This interface is not intended to be extended by clients.

Field Summary
`static String` `DEFAULT_CONFIG_NAME` The Id of the default build configuration

Method Summary
`String` `getName()` Returns the human readable name of this build configuration.
`IProject` `getProject()`

Methods inherited from interface org.eclipse.core.runtime.IAdaptable
`getAdapter`

Field Detail

### DEFAULT_CONFIG_NAME

    static final String DEFAULT_CONFIG_NAME

  The Id of the default build configuration

  See Also:
    Constant Field Values

Method Detail

### getProject

    IProject getProject()

  Returns:
    the project that the config is for; never null.

### getName

    String getName()

  Returns the human readable name of this build configuration. If this `IBuildConfiguration` is set on a Project, this can never be null.

  If this IBuildConfiguration is being used as a reference to a build configuration in another project, this may be null. Such build configuration references are resolved to the current active configuration at build time.

  Returns:
    the name of the configuration; or null if this is a reference to the active configuration

Eclipse Platform Release 3.7

Guidelines for using Eclipse APIs.

Copyright (c) Eclipse contributors and others 2000, 2011. All rights reserved.