Declares the binaries that should be built for a custom org.gradle.platform.base.ComponentSpec type. The following example demonstrates how to register a binary for a custom component type using a plugin with a org.gradle.platform.base.ComponentBinaries annotation. Furthermore the plugin registers 'DefaultSampleBinary' as implementation for org.gradle.platform.base.BinarySpec.

interface SampleComponent extends VariantComponentSpec {}
interface SampleBinary extends BinarySpec {}
class DefaultSampleBinary extends BaseBinarySpec implements SampleBinary {}

apply plugin: MyCustomBinariesPlugin

class MyCustomBinariesPlugin extends RuleSource {
    void register(TypeBuilder<SampleBinary> builder) {

    void createBinariesForSampleLibrary(ModelMap<SampleBinary> binaries, SampleComponent component) {
        binaries.create("${}Binary", SampleBinary)


Link copied to clipboard
abstract fun annotationType(): Class<out Annotation>
Link copied to clipboard
abstract fun equals(p: Any): Boolean
Link copied to clipboard
abstract fun hashCode(): Int
Link copied to clipboard
abstract fun toString(): String