手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

gradle如何使用allprojects、sub和project

时间:2024-10-14 05:25:40

1、在正确安装好gradle之后(这里就不介绍安装方法了),就可以开始对allprojects、subprojects和project使用方法进行测试,新建一个文件夹test_master用来测试,在文件夹里新建build.gradle和settings.gradle文件

gradle如何使用allprojects、sub和project

2、在test_master文件夹里再新建两个子目录在settings.gradle文竭惮蚕斗件里写入include &#泌驾台佐39;server', 'client'意思是包含server和client两个子项目在build.gradle文件中写入,添加allprojects,定义一个名为hello的任务,任务里使用doLast表示项目构件的时候最后执行allprojects { task hello { doLast { task -> println "I'm $task.project.name" } }}

gradle如何使用allprojects、sub和project

3、使用cmd窗口,切换到刚刚新建的测试目录,如图,执行gradle -q hello命令,-q关闭一些命令中的log信息,只显示打印信息等,从打印信息可以看出,test_master、server和client三个项目模块都执行了doLast方法,说明在allprojects里面添加的任务方法都会在每个模块项目执行一次,由此我们可以把所有公共的行为放在allprojects中定义

gradle如何使用allprojects、sub和project

4、在build.gradle中再添加subprojectssubprojects { hello { doLast { println "- I depend on master" } }}同样再次执行gradle -q hello命令,从图中的打印结果可以看出,除里test_master项目模块,server和client打印了信息。说明subprojects只是针对子项目有效

gradle如何使用allprojects、sub和project

5、在build.gradle中再添加projectproject(':client').hello { doLast { println "- I'm the client with 'project' test." }}同样再次执行gradle -q hello命令,从图中的打印结果可以看出,只有client打印了最后添加的打印信息,说明project(':client')这种方式是针对一个指定的模块执行的

gradle如何使用allprojects、sub和project

6、其实project(':client&拭貉强跳#39;)的定义,我们可以放在client目录下面的build.gradle中定义,将master的build.gradl髫潋啜缅e的project(':client')删掉,在client目录下的build.gradle中添加hello.doLast { println "- I'm the client with 'self project' test."}从图中的打印结果可以看出,效果和上面的一样

gradle如何使用allprojects、sub和project
© 手抄报圈