Package org.gradle.platform.base
Annotation Type BinaryTasks
-
@Retention(RUNTIME) @Target(METHOD) @Incubating public @interface BinaryTasks
Declares the tasks to build a customBinarySpec
binary. The following example demonstrates how to register multiple tasks for custom binary using a plugin with aBinaryTasks
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" } } }