我正在尝试在gradle / Android-Studio版本中添加pre-pre-build 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脚本的正确方法是什么?
答案 0 :(得分:22)
您需要指明任务的类型或使用exec
块:
task execute(type: Exec) {
}
或
exec {
}
您可以在https://docs.gradle.org/current/dsl/org.gradle.api.tasks.Exec.html
上找到更多信息