Declares the binaries that should be built for a custom ComponentSpec type. The following example demonstrates how to register a binary for a custom component type using a plugin with a ComponentBinaries annotation. Furthermore the plugin registers 'DefaultSampleBinary' as implementation for BinarySpec.
import org.gradle.model.* import org.gradle.model.collection.* interface SampleComponent extends ComponentSpec {} interface SampleBinary extends BinarySpec {} class DefaultSampleBinary extends BaseBinarySpec implements SampleBinary {} apply plugin: MyCustomBinariesPlugin @RuleSource class MyCustomBinariesPlugin { @BinaryType void register(BinaryTypeBuilderbuilder) { builder.defaultImplementation(DefaultSampleBinary) } @ComponentBinaries void createBinariesForSampleLibrary(CollectionBuilder binaries, SampleComponent component) { binaries.create("${component.name}Binary", SampleBinary) } }