如何运行新的gradle任务?

时间:2014-07-22 18:49:07

标签: bash shell intellij-idea automation gradle

我在build.gradle中创建了一个新的gradle任务:

task callCL(type: Exec) {
   println "hello"
   commandLine './rerun.sh'
}

假设运行rerun.sh:

#!/bin/bash

cucumber -f rerun --out rerun.txt

file="rerun.txt"
if [ -f "$file" ] then
    cucumber @rerun.txt
    rm $file
fi

我正在使用IntelliJ作为IDE。我该如何运行此任务?

我试图在zshell控制台中运行并出现此错误:

  
    

gradle callCL     zsh:找不到命令:gradle

  

但是在IDE中我一直使用gradle所以必须安装它。

我该如何解决这个问题?我的写作好吗?

2 个答案:

答案 0 :(得分:1)

试试这个
1.确保设置了GRADLE_HOME,GRADLE_OPTS。
2.确保$ PATH中包含GRADLE_HOME / bin 3. 哪个gradle 应该返回一个有效的输出。
4.然后,见下文
,如果这在命令提示符下工作,那么你的IDE设置只需知道GRADLE_HOME的位置,即其安装/可执行文件(gradle或gradle.bat)

注意:我使用了自己的虚拟rerun.sh文件,你可以使用build.gradle(如下所示)。

$ cat rerun.sh

#!/bin/bash

echo Im re-running a command echo
echo something
echo ...
echo

$ cat build.gradle

task callCL(type: Exec) {
        println "-----"
        println "hello"
        println "-----"
        executable "bash"
        args "-c", "bash ./rerun.sh"

        //The following will do as well as magic number in bash is already set to #!/bin/bash
        //args "-c", "./rerun.sh"
}

$ /cygdrive/c/gradle-2.0/bin/gradle callCL

-----
hello
-----
:callCL
Im re-running a command echo
something
...

BUILD SUCCESSFUL

Total time: 2.006 secs

答案 1 :(得分:0)

这看起来像是在路径上没有找到gradle的问题(在你的shell中)。

您可以使用GVM轻松安装gradle,以便在PATH上使用它。