Я хотел бы выполнить команду 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)
}
Вам не обязательно создавать задачу, чтобы просто запустить что-то в скрипте сборки, но вы можете сгруппировать команды, например, в блоке 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")
}
} }