如何在使用gradle工具API时设置gradle项目属性?

时间:2017-03-14 22:38:24

标签: gradle groovy gradle-tooling-api

我尝试使用工具API从groovy代码运行gradle任务。以下作品:

ProjectConnection connection = GradleConnector.newConnector()
            .forProjectDirectory(new File(System.properties.getProperty('user.dir')))
            .connect()    

connection.newBuild()
            .forTasks('deploy')
            .setStandardOutput(System.out)
            .run()

但我想要运行的任务取决于项目属性。例如,如果我是从命令行运行它,我会使用

 gradle -Penv=local deploy

我无法弄清楚如何使用工具API来设置这些项目值。

1 个答案:

答案 0 :(得分:2)

你可以这样做:

connection.newBuild()
            .withArguments('-Penv=local')
            .forTasks('deploy')
            .setStandardOutput(System.out)
            .run()