有什么gradle生命周期是在project对象创立后,dependencies之前吗?

我想通过Extension 来在Plugin 中修改 project 的dependencies 。
现在遇到了这样的问题。

如果我直接在我的apply方法中获取extension的话,那projectextension还未被赋值。

但是如果我在project#afterEvaluate{}中获取extension后修改dependencies的话又会报错

Cannot change dependencies of configuration

所以我想问一下,有什么生命周期是project对象创建后(extension被赋值)但dependencies未执行完毕呢?

更新提问

class PluginDemo implements Plugin<Project> {
    @Override
    void apply(Project target) {
        printExtension(target)

        target.rootProject.subprojects.each {            if (it.name.startsWith("m_")) {
                println("✅${it.name}")
                target.dependencies.implementation it
            } else {
                println("❌${it.name}")
            }
        }
    }    void printExtension(Project target) {
        target.extensions.create('myextension', MyExtension)
        println("myextension${target.myextension.merge}")
    }
}

我想通过一个外部的开关来让:app依赖其他subProject,所以想通过extension 来控制。


呼如林
浏览 728回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript