我是否可以从groovy脚本调用gradle任务而不调用gradle(gradlew)脚本作为外部程序? 即把gradle jar放到classpath并调用main?
答案 0 :(得分:6)
您可以使用Gradle Api以编程方式执行任务:
ProjectConnection connection = GradleConnector.newConnector()
.forProjectDirectory(projectDir) // the gradle project directory
.connect()
connection.newBuild()
.forTasks(taskName) // set your task name here
.run()
你需要依赖Gradle Api(你提到的jar):
"org.gradle:gradle-tooling-api:${gradle.gradleVersion}"