Как выполнить команду командной строки с Gradle Kotlin DSL в Gradle 6.1.1? - PullRequest
0 голосов
/ 04 февраля 2020

Я пытаюсь запустить приведенный ниже блок кода после прочтения нескольких сообщений в topi c и руководства Gradle. Я запускаю ниже и получаю следующую ошибку: execCommand == null!

Есть идеи, что я делаю не так с блоком кода ниже?

open class BuildDataClassFromAvro : org.gradle.api.tasks.Exec() {

    @TaskAction
    fun build() {
        println("Building data classes.....")
        commandLine("date")
    }
}

tasks.register<BuildDataClassFromAvro>("buildFromAvro"){

        description = "Do stuff"

}

1 Ответ

2 голосов
/ 04 февраля 2020

Чтобы определить задачу Gradle, которая запускает командную строку с использованием Gradle Kotlin DSL, выполните в файле сборки что-то вроде этого:

task<Exec>("buildFromAvro") {
    commandLine("echo", "test")
}

В приведенном выше примере commandLine просто запустится echo, вывод значения test. Поэтому замените это на то, что вы на самом деле хотите сделать.

Затем вы можете запустить это с gradle buildFromAvro

Подробнее здесь: https://docs.gradle.org/current/dsl/org.gradle.api.tasks.Exec.html

...