0

I am writing a Gradle plugin in Kotlin, adding a custom task.

How do I go about declaring the task's inputs and outputs?

Vic Seedoubleyew
  • 9,888
  • 6
  • 55
  • 76

1 Answers1

2

You need to provide getter properties with annotations as follows:

@get:OutputDirectory
protected val outputDir by lazy {
    // expression that evaluates to the output directory
}

@get:InputFiles
protected val inputFiles by lazy {
    // expression that evaluates to your inputs
}

Therefore you will have to import these 2 classes at the top of your Kotlin file:

import org.gradle.api.tasks.InputFiles
import org.gradle.api.tasks.OutputDirectory
Vic Seedoubleyew
  • 9,888
  • 6
  • 55
  • 76