Выполнение команды Curl в скрипте Gradle.kts

Я хотел бы выполнить команду Curl ниже в моем скрипте gradle.kts. Попробовал задачу gradle, но команда невыполнима из-за ошибки [pid=1991, exitValue="Not Exited"].

Curl -v -H Content-Type:text/plain --upload-file Mapping.txt --user Пример+учетная запись:Example-License-Key-4e8ec2ae6cfe https://api.eum-appdynamics.com/v2/ account/Example+account/com.example.networklogger/1/proguard-mapping

Я попробовал этот подход с задачей Gradle ниже и ожидал выполнения команды Curl.

task.create{
val command = "curl command URL"
Runtime.getRuntime().exec(command)
}
0
0
55
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Вам не обязательно создавать задачу, чтобы просто запустить что-то в скрипте сборки, но вы можете сгруппировать команды, например, в блоке run. Чтобы дождаться Process результата, используйте waitFor().

run {
    val process = Runtime.getRuntime().exec(arrayOf("curl", "commands URL"))
    val result = process.waitFor()
    println("Result: $result")
}

Примечания:

Runtime.exec(String) устарел, лучше использовать одну из альтернатив.

Ответ принят как подходящий

Наконец-то ответ после долгих копаний.

Выполнил эту команду завитка

tasks.create(name: "uploadMappingFileToAppDynamics") { 

doLast {
exec {
val sourcePath = "${outputsDir)/mapping/selectableEnvironmentRelease/mapping.txt"
commandLine = Listof("curl",
"-X",
"Proxy URL",
"-H",
"Content-Type: text/plain",
"--upload-filel",
"${sourcePath}"
"--User",
"username",
"password")
}

} }

Другие вопросы по теме