Gradle과 Gradlew를 설치하는 방법은 무엇입니까?

Gradle과 Gradlew를 설치하는 방법은 무엇입니까?

Gradlew를 설치하는 데 문제가 있습니다... 터미널에 "gradle"을 입력하면 gradle 명령을 사용할 수 있지만 "gradlew"는 아무 작업도 수행하지 않습니다. 나는 gradle을 사용하여 설치했다.

sudo apt install gradle

그리고 성공적으로 설치되었습니다. sudo를 사용하지 않을 때 표시되기 때문에 "gradle"이 아닌 "sudo gradle"을 사용해야 합니다.

icebunny08@D3CRYPT3D:~$ gradle
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.gradle.internal.reflect.JavaMethod (file:/usr/share/gradle/lib/gradle-base-services-3.4.1.jar) to method java.lang.ClassLoader.getPackages()
WARNING: Please consider reporting this to the maintainers of org.gradle.internal.reflect.JavaMethod
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
Starting a Gradle Daemon (subsequent builds will be faster)
:help

Welcome to Gradle 3.4.1.

To run a build, run gradle <task> ...

To see a list of available tasks, run gradle tasks

To see a list of command-line options, run gradle --help

To see more detail about a task, run gradle help --task <task>

BUILD SUCCESSFUL

Total time: 5.017 secs

내 문제는 Gradle을 올바르게 설치했는지와 "gradlew" 명령을 사용할 수 없는 이유입니다. 이것은 "gradlew"를 사용할 때의 출력입니다.

icebunny08@D3CRYPT3D:~$ gradlew

Command 'gradlew' not found, did you mean:

  command 'gradle' from deb gradle

Try: sudo apt install <deb name>

답변1

gradle 명령을 실행할 때 표시되는 경고는 설명된 대로 JDK 9 이상의 일부 문제로 인해 발생합니다.여기.

이러한 경고가 문제가 되는 경우 설명된 해결 방법을 사용하여 경고를 사라지게 할 수 있습니다.

이 경고를 억제하려면 Java 부트스트랩 스크립트 또는 JAVA_OPTS에 다음 인수를 추가할 수 있습니다.

--add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED


이제 gradlew에 대해.

Gradlew는 Gradle을 감싸는 래퍼입니다. 워크스테이션이 아닌 프로젝트에 바인딩되어 있습니다. 즉, 개발하는 각 Gradle 프로젝트에는 Graddle 래퍼가 함께 제공될 수 있습니다. gradlew의 목적은 프로젝트를 이식 가능하고(즉, 개발자가 워크스테이션에 gradle을 설치할 필요가 없음) 안정적으로(즉, 모든 사람에게 동일한 버전의 gradle을) 만드는 것입니다. 래퍼 스크립트는 프로젝트에 지정된 Gradle 버전을 다운로드한 다음 실행합니다. 이것은 모두 설명되어 있습니다.그들의 문서.

귀하의 경우 수행한 작업은 전 세계적으로 워크스테이션에 Gradle을 설치하는 것입니다. Gradle 설치에는 Gradlew가 포함되어 있지 않습니다. 설명된 대로 선택한 모든 Gradle 프로젝트에 Gradlew를 추가해야 하기 때문입니다.여기. 프로젝트에서 다음 명령을 실행하기만 하면 됩니다.

gradle wrapper

그러면 Gradle 프로젝트에 대한 래퍼 스크립트가 생성됩니다. 분명히 이 명령을 실행하려면 Gradle을 설치해야 하지만(이미 설치했음) 결과를 커밋하고 다른 개발자와 공유하면 Gradle을 설치하지 않고도 Gradlew 스크립트를 사용할 수 있습니다.

귀하의 경우에는 두 가지 가능성이 있습니다.

  • 프로젝트에서 gradle 명령을 실행하세요 gradle clean. 전역적으로 Gradle을 수동으로 설치했기 때문에 이 작업을 수행할 수 있습니다.
  • 와 같은 프로젝트에서 gradlew 명령을 실행하세요 gradlew clean. gradle wrapper처음에 래퍼 스크립트를 생성했기 때문에 이 작업을 수행할 수 있습니다 .

Gradle 버전이 동일하면 둘 다 동일한 결과를 제공해야 합니다.

관련 정보