Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Execute shell script in Gradle

I have a gradle build setup at the beginning of which I want to execute a shellscript in a subdirectory that prepares my environment.

task build << { } task preBuild << {     println 'do prebuild stuff:' } task myPrebuildTask(type: Exec) {     workingDir "$projectDir/mySubDir"     commandLine './myScript.sh' }  build.dependsOn preBuild preBuild.dependsOn myPrebuildTask 

However, when I execute the task either by calling gradle myPrebuildTask or by simply building the project, the following error occurs:

> A problem occurred starting process 'command './myScript.sh'' 

Unfortunately, thats all I get.
I have also tried the following - same error.

commandLine 'sh mySubDir/myScript.sh' 

I use Gradle 1.10 (needed by Android) on Windows, inside a Cygwin shell. Any ideas?

like image 852
Paul Latzelsperger Avatar asked Aug 29 '14 05:08

Paul Latzelsperger


People also ask

How do I run a command in Gradle task?

Press ⌃⌃ (macOS), or Ctrl+Ctrl (Windows/Linux), type "gradle" followed by the gradle task name or names. We can, of course, run Gradle commands from the terminal window inside IntelliJ IDEA. Open this with ⌥F12 (macOS), or Alt+F12 (Windows/Linux). If we type a Gradle command, IntelliJ IDEA highlights it.


1 Answers

use

commandLine 'sh', './myScript.sh' 

your script itself is not a program itself, that's why you have to declare 'sh' as the program and the path to your script as an argument.

like image 91
Rene Groeschke Avatar answered Sep 30 '22 21:09

Rene Groeschke