(6)在gradle文件配置参数
buildscript {
repositories {
maven {
url uri('../repo')
}
}
dependencies {
classpath group: 'com.micky',
name: 'gradle-micky',
version: '1.0.2'
}
}
apply plugin: 'com.micky.mycustom'
myArgs {
sender='Micky Liu'
message='Gradle is so simple.'
}
(7)执行gradle customTask,结果如下:
8、向Plugin Task 传递嵌套试复杂参数
(1)拷贝一份上面的代码,改名为CustomPluginTaskWithNestParam,修改pluginsrcmaingroovycommickygradleMyCustomPlugin.groovy
package com.micky.gradle;
import org.gradle.api.*;
class MyNestPluginExtension {
def receiver = "Kate Zhou"
def email = "KateZhou@gmail.com"
}
class MyCustomPluginExtension {
def message = "From MyCustomPluginExtention"
def sender = "MyCustomPluin"
}
class MyCustomPlugin implements Plugin<Project> {
void apply(Project project) {
project.extensions.create('myArgs', MyCustomPluginExtension)
project.myArgs.extensions.create('nestArgs', MyNestPluginExtension)
project.task('customTask', type: MyCustomTask)
}
}
(2)修改MyCustomPlugin.groovy
package com.micky.gradle;
import org.gradle.api.DefaultTask
import org.gradle.api.tasks.TaskAction
class MyCustomTask extends DefaultTask {
@TaskAction
void output() {
println "Sender is ${project.myArgs.sender} nmessage: ${project.myArgs.message}"
println "Receiver is ${project.myArgs.nestArgs.receiver} nemail: ${project.myArgs.nestArgs.email}"
}
}











