J'ai essayé selon example dans, et simplifié à juste "message".Gradle: Impossible de passer l'argument à la classe dans le plugin
class GreetingPlugin implements Plugin<Project> {
void apply(Project project) {
def extension = project.extensions.create('greeting', GreetingPluginExtension, project)
project.tasks.create('hello', Greeting) {
message = extension.message
}
}
}
class GreetingPluginExtension {
def String message = "aa"
GreetingPluginExtension(Project project) {
message = project.property(String)
}
}
class Greeting extends DefaultTask {
@Input
def String message = project.property(String)
@TaskAction
def testCoverageVerification() {
logger.quiet("Message is")
logger.quiet(message)
}
}
apply plugin: GreetingPlugin
greeting {
message = 'Hi from Gradle'
}
Quand je lance ./gradlew -q hello
, je suis
Message is
value: null
Je pensais que ce serait
Message is
value: Hi from Gradle
Pourquoi ma chaîne du message d'accueil ne parviennent pas à passer?