Groovy中的变量可以通过两种方式定义:使用数据类型的本地语法,或者使用def关键字
def list = [1,2,3,4]
list.each{
println it
}
复制代码
File file = new File("E:/Example.txt")
println file.text
复制代码
Groovy开发更为简洁,也可使用java语法进行插件开发
新建一个Java Library的module,删除java目录,创建groovy和resources、META-INF、gradle-plugins目录
implementation-class=com.test.plugin.TestPlugin 复制代码
apply plugin: 'groovy'
apply plugin: 'maven'
repositories {
jcenter()
google()
}
dependencies {
//gradle sdk
compile gradleApi()
//groovy sdk
compile localGroovy()
}
复制代码
class TestPlugin implements Plugin<Project> {
@Override
void apply(Project target) {
println("----plugin running")
}
}
复制代码
实现Plugin,在apply方法中添加新的任务
该module下的build.gradle
//插件版本
version = "1.0.0"
//插件所属group
group='com.test.plugin'
//插件名称
archivesBaseName = 'test'
uploadArchives{ //当前项目可以发布到本地文件夹中
repositories {
mavenDeployer {
repository(url: uri('/Users/hh/Desktop/repos')) //定义本地maven仓库的地址
}
}
}
复制代码
执行uploadArchives进行上传
插件远程上传
点击选择Edit Configurations
添加Remote,其他配置使用默认值
在对应位置添加断点
在应用工程根目录输入下面的命令开启gradle的远程调试
export GRADLE_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005" 复制代码
在应用工程根目录输入下面的命令启动远程调试器
./gradlew --no-daemon checkGradleDependencies -Dorg.gradle.debug=true 复制代码
点击Debug按钮,添加调试器
再次点击Debug按钮,在应用工程的命令行查看构建开始执行,当运行到插件工程断点时,就会自动暂停
在应用工程根目录输入下面命令关闭gradle远程调试
export GRADLE_OPTS="" 复制代码