Gradle插件之判断环境环境变量

来源:互联网 发布:淘宝淘词助手官网 编辑:程序博客网 时间:2024/06/18 04:07

背景:在设计插件化开发的时候,涉及到插件和宿主同时编译,但不想依赖dependency属性来维护顺序,而是通过执行顺序来保证,

但是遇到一个问题就是当配置了

org.gradle.parallel属性之后,就变成平行编译,同时进行谁先谁后就没有办法保证了,所以不允许设置这个属性,但是有几十个产品线,不可能我每个团队都通知一声,而且还有新同事,一旦出现问题,不清楚的情况,可能耗费大家的一些时间才能找到原因,甚至会觉得插件化工具不好用,所以我需要在gradle插件中增加判断,所以我们需要增加环境检查,一开始还在纠结这种gradle的属性配置在哪里拿,后来查看gradle properties的时候,发现这个属性就在properties里所以我们直接使用
@Overrideprotected void setupEnvironment(){    def sp = project.gradle.startParameter    def t = sp.taskNames[0]    if (t.equals("assembleDebug")) {        if(project.getRootProject().hasProperty("org.gradle.parallel")){            throw new RuntimeException("assembleDebug can not configuration the properties of :org.gradle.parallel,plz remove it,can not set to false too")        }    }}就可以保证在debug编译的时候,都会检测