gradlew : 권한 거부


286

명령 줄에서 gradlew를 실행하려고하지만 끊임없이 다음 오류가 발생합니다.

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

프로젝트 디렉토리에서이 명령을 이미 실행하고 있습니다. 여기에서 발생하는 것과 같은 Android Studio 0.2.x에서 동일한 (설명 적이 지 않은) 오류가 발생하면이 명령을 실행해야합니다 : Android studio 및 gradle build error

내가 잘못하고 있는데 어떻게 해결할 수 있습니까?

답변:


818

gradlew 파일에서 실행 플래그를 설정하십시오.

chmod +x gradlew


4
chmod + x gradlew? (: 효과가 있습니다. 승인 된 것으로 표시 할 수 있도록 답을 편집하십시오. 감사합니다!
Brenda Nicole Tan

28
기본 템플릿이 gradlew를 실행 파일로 아직 설정하지 않은 이유가 있습니까? 내가 이것을해야한다는 것이 이상하게 보입니다.
Ankur

3
Atlassian Bamboo 빌드를 설정할 때 비슷한 문제가있었습니다. gitlew 파일을 git에서 체크 아웃하면 실행 가능한 속성이 없으므로 @Vincent가 지적한대로 chmod + x에 "스크립트"작업을 내 작업에 추가해야했습니다. 감사!
Doug Ayers

@Vincent 권한 문제를 해결하는 데 왜 이것이 필요한지 자세히 설명해 주시겠습니까?
Abhijit

4
@Abhijit 당신은 파일 권한을 확인할 수 있습니다 ls -l. 가장 왼쪽 열에 파일 권한이 부여됩니다.
Sudhanshu 2018 년


33

명령 전에 "bash"를 사용할 수 있습니다 :

bash ./gradlew compileDebug --stacktrace

27

에 대한 실행 권한을 업데이트해야합니다 gradlew

로컬로 :chmod +x gradlew

힘내 :

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

넌 봐야 해:

mode change 100644 => 100755 gradlew

고마워, 나에게 많은 도움이되었습니다!
Igor Fridman 2016 년

26

Jenkins> 프로젝트 대시 보드> (gradle 프로젝트 선택) 구성> 빌드

x Gradle Wrapper 사용

gradlew 실행 파일 만들기 x

여기에 이미지 설명을 입력하십시오


그것은 당신을 위해 작동합니까? 작업 설정에서 확인란을 설정했지만 gradlew를 실행 가능하게 만들지 못했습니다. clean before checkout옵션을 사용 합니다.
zubactik

1
나를 위해 작동합니다! jenkins에게 명시 적으로 실행 파일을 만들도록 지시해야합니다.
Harvey Lin

16

자식 업데이트 색인 --chmod = + x gradlew

이 명령은 특히 비 유닉스 시스템에서 더 잘 작동합니다.


2

Android Studio 터미널 (또는 Linux / Mac 터미널)에 이것을 입력하십시오 command.

chmod +x gradlew

시도해보십시오 :

 ./gradlew assembleDebug

여기에 이미지 설명을 입력하십시오


1

chmod'ing 후에도 작동하지 않으면 / tmp 디렉토리에서 실행하지 않아야합니다.


1

내 경우에는 권한을 실행했으며 sudo로도 gradlew를 실행할 수 없었습니다. 내 문제는 내 프로젝트가 다른 하드 드라이브에 있었고 해당 드라이브에 대한 실행 권한이 없었습니다. fstab에서 noexec mount 플래그를 제거하고 exec 플래그를 추가했습니다. 그런 다음 변경 사항이 적용되도록 디스크를 다시 마운트하십시오.



0

Mac에서 플러터 실행을 실행하는 동안 동일한 오류가 발생했습니다. 분명히, flutter 프로젝트에는 실행 가능한 것으로 예상되는 android / gradlew 파일이 있으며 그렇지 않았습니다. 제 경우에는

chmod a+rx android/gradlew

이 명령을 사용하고 프로젝트를 실행했습니다.


0

이 오류는 gradle 권한 관련입니다. 터미널에 아래 줄을 붙여 넣고 실행하십시오 ...

chmod a + rx android / gradlew


0

안드로이드 폴더 cmd에서

chmod +x gradlew

실행

./gradlew clean

루트 프로젝트 실행

react-native run-android
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.