360
votes

I am attempting to run gradlew from my command line, but am constantly facing the following error.

Brendas-MacBook-Pro:appx_android brendalogy$ ./gradlew compileDebug --stacktrace
-bash: ./gradlew: Permission denied

I am already running this command from my project directory. Need to run this command as I am facing the same (nondescriptive) error on Android Studio 0.2.x as encountered here: Android studio and gradle build error

Am I doing something wrong and how do I get around this?

16

16 Answers

1016
votes

Try to set the execution flag on your gradlew file:

chmod +x gradlew

107
votes

Could also be fixed with

git update-index --chmod=+x gradlew
43
votes

You need to update the execution permission for gradlew

Locally: chmod +x gradlew

Git:

git update-index --chmod=+x gradlew
git add .
git commit -m "Changing permission of gradlew"
git push

You should see:

mode change 100644 => 100755 gradlew
36
votes

You could use "bash" before command:

bash ./gradlew compileDebug --stacktrace
26
votes

Jenkins > Project Dashboard > (select gradle project) Configure > Build

x Use Gradle Wrapper

Make gradlew executable x

enter image description here

18
votes

git update-index --chmod=+x gradlew

This command works better especially on non-unix system.

10
votes

Just type this command in Android Studio Terminal (Or your Linux/Mac Terminal)

chmod +x gradlew

and try to :

 ./gradlew assembleDebug

enter image description here

5
votes

With this step set permission to gradlew

steps {
    echo 'Compile project'
    sh "chmod +x gradlew"
    sh "./gradlew clean build --no-daemon"
}
1
votes

if it doesn't work after chmod'ing make sure you aren't trying to execute it inside the /tmp directory.

1
votes

Try below command:

chmod +x gradlew && ./gradlew compileDebug --stacktrace
1
votes

In my case, I had executed permissions and I couldn't run gradlew even with sudo. my problem was my project was in another hard drive and I didn't have exec permission on that drive. I simply removed noexec mount flag from fstab and added exec flag. then remount the disk so changes apply.

1
votes

on android folder cmd run

chmod +x gradlew

and run

./gradlew clean

and root project run

react-native run-android
1
votes

chmod +x gradlew

Just run the above comment. that's all enjoy your coding...

0
votes

I got the same error trying to execute flutter run on a mac. Apparently, in your flutter project, there is a file android/gradlew that is expected to be executable (and it wasn't). So in my case,

chmod a+rx android/gradlew

i used this command and execute the project

0
votes

This error is gradle permission related . Just paste below line in your terminal and run...

chmod a+rx android/gradlew

0
votes

This issue occur when you migrate your android project build in windows to any unix operating system (Linux). So you need to run the below command in your project directory to convert dos Line Break to Unix Line Break.

find . -type f -print0 | xargs -0 dos2unix

If you dont have dos2unix installed. Install it using

In CentOs/Fedora

yum install dos2unix

In Ubuntu and other distributions

sudo apt install dos2unix