美文网首页
beforeEvaluate()的执行时机

beforeEvaluate()的执行时机

作者: cmeiyuan | 来源:发表于2017-07-17 15:40 被阅读306次
public class DemoPlugin implements Plugin<Project> {
    @Override
    public void apply(Project project) {
        project.beforeEvaluate {
            println("beforeEvaluate")
        }
    }
}

如果这个DemoPlugin是被写在build.gradle文件里,像这样apply plugin: 'demoPlugin'beforeEvaluate()方法不会执行,而如果是在rootPlugin里,调用subProject的apply plugin 'demoPlugin',则beforeEvaluate()会被执行。原因是beforeEvaluate()这个方法是在解析build.gradle文件之前执行,在build.gradle中才注册beforeEvaluate()监听方法,已经晚了。

基于此,我们想在解析build.gradle之前,改变build.gradle文件的内容,可以在
beforeEvaluate() 这个方法里修改build.gradle

相关文章

  • beforeEvaluate()的执行时机

    如果这个DemoPlugin是被写在build.gradle文件里,像这样apply plugin: 'demoP...

  • 2020-11-07

    JS 函数的执行时机 函数的执行时机不同结果也会不同,js也分为同步执行和异步执行 简单的举几个同步执行例子1、 ...

  • golang中defer执行时机与常见问题

    defer是什么? defer的用途 defer的执行时机 了解defer的执行时机首先要知道golang的ret...

  • Vue3中新增API的见解

    1. 组件API按需引入 2. setup执行时机与注意点 setup执行时机在beforeCreate之前 在s...

  • ContentProvider的执行时机

    源码分析: 这里先给出源码分析的结论:ContentProvider 的 onCreate() 方法先于 Appl...

  • JS的执行时机

    以下代码输出结果以及原因 首先在for循环之前let i定义了变量i,setTimeout(code,millis...

  • onActivityResult执行时机

    前言 前两天遇到了个onActivityResult执行时机错误的问题,在解决过程中学习了些onActivityR...

  • setInterval 执行时机

    setInterval 设置定时器是在时间到了之后才执行。

  • Python装饰器的一些小知识

    调用时机 装饰器的调用时机是在导入时,或者是加载时就执行,如下代码: 其执行结果如下: 按照正常的代码执行逻辑要执...

  • JS 函数的执行时机

    1. 常见的面试题代码解释 // 6 个 6JS是单线程运行的,setTimeout(code,millisec)...

网友评论

      本文标题:beforeEvaluate()的执行时机

      本文链接:https://www.haomeiwen.com/subject/rctqkxtx.html