我正在使用在文件收集循环中执行命令行的 gradle 任务:
...
collection.each { file ->
exec {
workingDir = file(props['WORKING_DIR']).getAbsolutePath()
commandLine "java", "-jar", file(props['SIGN_TOOL']).getAbsoluteFile(), file
}
}
...
不幸的是,gradle 任务以这个错误结束:
Execution failed for task ':signFiles'.
No signature of method: java.io.File.call() is applicable for argument types: (java.lang.String) values: Possible solutions: wait(), any(), wait(long), each(groovy.lang.Closure), any(groovy.lang.Closure), list()
我该如何解决这个问题?
感谢 MVM
最佳答案
你已经调用了你的循环变量 file
然后它试图用它来调用 file()
...
尝试重命名您的闭包变量:
collection.each { aFile ->
exec {
workingDir = file(props['WORKING_DIR']).getAbsolutePath()
commandLine "java", "-jar", file(props['SIGN_TOOL']).getAbsoluteFile(), aFile
}
}
关于android - 循环内的命令行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23367153/