Gradle命令行Exec无法正常工作

时间:2012-07-17 11:30:52

标签: groovy gradle

当我尝试创建任务类型Exec时,我正在创建自己的插件。它没有运行任何命令。我收到命令行错误说明命令不正确。我已在Exec命令中显示生成的命令到命令提示符,当我运行它时它工作。代码不在gradle插件范围内。

task myrun (type: Exec) {
    def cp = project.files(
    project.sourceSets.main.output.classesDir,
    project.sourceSets.main.resources,
    project.configurations.runtime
    ).getAsPath()

String myCommand = "visage -cp ${cp} visage.javafx.scene.effect.EffectTest"


println "RUN COMMAND : ${myCommand}"
workingDir project.sourceSets.main.output.classesDir
// classpath project.files([project.sourceSets.main.output.classesDir,project.sourceSets.main.resources, project.configurations.runtime,])
commandLine = [myCommand]
}

有人能告诉我代码中是否有错误?

2 个答案:

答案 0 :(得分:7)

以下是同一post of yours in the Gradle forum的答案:

commandLine是一个列表,每个参数都成为该列表的一个单独元素:

commandLine "visage", "-cp", cp, "visage.javafx.scene.effect.EffectTest"

答案 1 :(得分:0)

另一种方法是使用类似的东西

exec clause
{
executable = "bash"
args = [ "-c", """ "command arg1 arg2... argn" """]
...
}