Can gradle extensions handle lazy evaluation of a property?

前端 未结 2 886
执笔经年
执笔经年 2021-02-02 14:57

I\'m writing a custom gradle plugin to handle some vaguely complicated work and I have run into a frustrating problem while using properties to configure some of the tasks that

2条回答
  •  野的像风
    2021-02-02 15:30

    The answer by Peter in my question here indicates that conventionMapping feature will definitely go away. It's best to avoid it.

    Using afterEvaluate to solve the deferred configuration issue has made my code a lot cleaner than the conventionMapping approach.

    class MyPlugin implements Plugin {
        void apply(Project project) {
            project.extensions.create('myPluginProps', MyPluginExtension)
    
            project.afterEvaluate {
                project.task(type: MyTask, 'thisTaskWorksIncorrectly') {
                    input = project.myPluginProps.message
                }
            }
        }
    }
    

提交回复
热议问题