我正在尝试向gradle / Android-Studio构建中添加预构建前的Shell脚本。我在app/build.gradle中添加了以下内容:

task prePreBuild << {
  commandLine 'ls'
}
preBuild.dependsOn prePreBuild

当我使用./gradlew assembleDebug调用构建时,出现以下错误:

Could not find method commandLine() for arguments [ls] on project ':app'

如果我用commandLine之类的东西替换println 'Hello'行,那么它将正常工作,并且我可以看到新任务的输出。

我搜索了其他提及“找不到方法commandLine”的内容,但一无所获。从此gradle任务中调用Shell脚本的正确方法是什么?

最佳答案

您需要指示任务的类型或使用exec块:

task execute(type: Exec) {

}

要么
exec {

}

您可以找到有关https://docs.gradle.org/current/dsl/org.gradle.api.tasks.Exec.html的更多信息

07-24 09:39
查看更多