BinaryTasks

Declares the tasks to build a custom org.gradle.platform.base.BinarySpec binary. The following example demonstrates how to register multiple tasks for custom binary using a plugin with a org.gradle.platform.base.BinaryTasks annotation.

@Managed interface SampleComponent extends ComponentSpec {}
@Managed interface SampleBinary extends BinarySpec {}

apply plugin: MyCustomBinariesPlugin

class MyCustomBinaryCreationTask extends DefaultTask {
     @TaskAction void build() {
         //building the binary
     }
}

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

    @BinaryTasks
    void createBinaryTasks(ModelMap<Task> tasks, SampleBinary binary) {
        tasks.create("${binary.name}Task1", MyCustomBinaryCreationTask)
        tasks.create("${binary.name}Task2") {
            dependsOn "${binary.name}Task1"
        }
    }
}

Functions

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