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:
Restriction:
This interface is not intended to be implemented by clients.
Restriction:
This interface is not intended to be extended by clients.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
    The Id of the default build configuration
  • Method Summary

    Modifier and Type
    Method
    Description
    Returns the human readable name of this build configuration.
     

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

    getAdapter
  • Field Details

    • DEFAULT_CONFIG_NAME

      static final String DEFAULT_CONFIG_NAME
      The Id of the default build configuration
      See Also:
  • Method Details

    • 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