programing

Android Studio 오류 "Android Gradle 플러그인을 실행하려면 Java 11이 필요합니다.현재 Java 1을 사용하고 있습니다.8"

powerit 2023. 7. 17. 21:28
반응형

Android Studio 오류 "Android Gradle 플러그인을 실행하려면 Java 11이 필요합니다.현재 Java 1을 사용하고 있습니다.8"

최신 Android Studio를 다운로드하여 Android Jetpack Compose Project를 실행하려고 했는데 실행해보니 다음과 같은 오류가 발생했습니다.

> Failed to apply plugin 'com.android.internal.application'.
> Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8.
You can try some of the following options:
- changing the IDE settings.
- changing the JAVA_HOME environment variable.
- changing `org.gradle.java.home` in `gradle.properties`.

나는 이미 Java 11을 다운로드했고 gradle.properties에 Java 11을 추가했습니다.

org.gradle.java.home=/Library/Java/JavaVirtualMachines/jdk-11.0.10.jdk/Contents/Home

11이 . - JAVA_HOME은 Java 11을 표시하지만 실행하면 작동하지 않습니다./Library/Java/JavaVirtualMachines/jdk-11.0.10.jdk/Contents/Home

어떻게 해야 하나요?

내 Android Studio 버전

Enter image description here

내 Java 버전

java 11.0.10 2021-01-19 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.10+8-LTS-162)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.10+8-LTS-162, mixed mode)

그라들 래퍼. 속성.

distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.2-bin.zip

build.gradle 클래스 경로

classpath "com.android.tools.build:gradle:7.0.0-alpha13"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.31"

파일 build.gradle

plugins {
    id 'com.android.application'
    id 'kotlin-android'
}

android {
    compileSdk 30

    defaultConfig {
        applicationId "com.example.testandroid3"
        minSdk 21
        targetSdk 30
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
        vectorDrawables {
            useSupportLibrary true
        }
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_11
        targetCompatibility JavaVersion.VERSION_11
    }
    kotlinOptions {
        jvmTarget = "11"
        useIR = true
    }
    buildFeatures {
        compose true
    }
    composeOptions {
        kotlinCompilerExtensionVersion compose_version
        kotlinCompilerVersion '1.4.31'
    }
}

java {
    toolchain {
        languageVersion.set(JavaLanguageVersion.of(11))
    }
}

dependencies {

    implementation 'androidx.core:core-ktx:1.3.2'
    implementation 'androidx.appcompat:appcompat:1.2.0'
    implementation 'com.google.android.material:material:1.2.1'
    implementation "androidx.compose.ui:ui:$compose_version"
    implementation "androidx.compose.material:material:$compose_version"
    implementation "androidx.compose.ui:ui-tooling:$compose_version"
    implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.3.0'
    implementation 'androidx.activity:activity-compose:1.3.0-alpha02'
    testImplementation 'junit:junit:4.13.2'
    androidTestImplementation 'androidx.test.ext:junit:1.1.2'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
    androidTestImplementation "androidx.compose.ui:ui-test-junit4:$compose_version"
}

Gradle이 올바른 JDK를 사용하고 있는지 확인합니다.달기보를 실행해 ../gradlew --version프로젝트 디렉토리에 있습니다.출력은 다음과 같아야 합니다.

Gradle 7.0-rc-2
------------------------------------------------------------

Build time:   2021-04-01 21:26:39 UTC
Revision:     912a3368b654b71250dfc925a20d620393

Kotlin:       1.4.31
Groovy:       3.0.7
Ant:          Apache Ant(TM) version 1.10.9 compiled on September 27 2020
JVM:          11.0.10 (Ubuntu 11.0.10+9-Ubuntu-0ubuntu1.20.10)
OS:           Linux 5.11.4-051104-generic amd64

JVM이 버전 1.8을 가리키는 경우 설정에서 JVM을 변경해야 합니다.기본 설정 → 빌드, 실행, 배포빌드 도구 → Gradle → *Gradle JDK에서 찾을 수 있습니다.

Enter image description here

Android Studio Arctic Fox(4.2)의 경우 Windows 10 Pro PC에서 2020.3.1 패치 2:

1단계

Enter image description here

2단계

Enter image description here

Windows 10에서 Android Studio(Arctic Fox 2020.3.1)를 사용하는 경우.

빌드 실패 오류를 해결하는 방법은 다음과 같습니다.

Android Gradle 플러그인을 실행하려면 Java 11이 필요합니다.현재 Java 1.8을 사용하고 있습니다.

Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8

  1. 프로젝트 구조 열기...

    (도구 모음에서)
    Project Structure on the Toolbar

    (또는 파일 메뉴에서)
    Project Structure... on the File Menu

  2. Gradle Settings 링크 클릭

    Gradle Settings Link

  3. Gradle JDK 드롭다운 목록에서 올바른 Java JDK 선택

    enter image description here

참고: 올바른 Java JDK를 찾을 수 없는 경우 먼저 다운로드하여 설치해야 합니다.

Android Studio Arctic Fox (4.2) with 2020.3.1 패치 3 - Mac

기본 설정의 Gradle 설정에서 포함된 JDK 버전 11.0.10을 선택하기만 하면 됩니다.

Enter image description here

이것이 제가 macOS에서 수정한 방법입니다.

./gradlew --version

Enter image description here

기본 설정으로 이동 → 빌드, 실행, 배포Gradle

Enter image description here

Gradle JDK를 최신 버전으로 변경합니다.

Enter image description here

Android Studio를 설치하기 전에 하나의 JDK(Microsoft 빌드 OpenJDK 17)만 설치되어 있습니다.알 수 없는 이유로 Android Studio에 JDK 1.8이 설치되어 있으며 Gradle 기본값으로 설정되어 있습니다./Users/<username>/Library/Java/JavaVirtualMachines/corretto-1.8.0_322

macOS M1에서 저는 다음 단계로 그것을 해결했습니다.

  1. Visual Studio Code에서 파일 ~/.zshrc가 열렸습니다.

  2. 다음 행을 추가했습니다.

    export JAVA_HOME="/Applications/Android Studio.app/Contents/jre/Contents/Home"
    
  3. 파일 저장

  4. 실행하여 터미널을 수정된 파일로 다시 로드했습니다.

    source ~/.zshrc
    
  5. 실행하여 변경사항이 로드되었는지 테스트

    echo $JAVA_HOME
    
  6. 올바른 위치가 표시되고 있는지 확인합니다.

  7. 를 실행하여 Gradle이 올바른 Java 11 버전을 표시하고 있는지 확인했습니다.

    cd android
    ./gradlew --version
    

그 결과는 다음과 같습니다.

------------------------------------------------------------
Gradle 7.3.3
------------------------------------------------------------

Build time:   2021-12-22 12:37:54 UTC
Revision:     6f556c80f945dc54b50e0be633da6c62dbe8dc71

Kotlin:       1.5.31
Groovy:       3.0.9
Ant:          Apache Ant(TM) version 1.10.11 compiled on July 10 2021
JVM:          11.0.12 (JetBrains s.r.o. 11.0.12+0-b1504.28-7817840)
OS:           Mac OS X 12.2.1 aarch64

다음을 실행하여 다시 빌드하려고 했습니다.

yarn android

그리고 성공했습니다.

시작할 때 이 오류가 발생했습니다.gradlew ktlintFormat'북극 폭스 터미널' 건물에 있습니다

  1. Project Structure(프로젝트 구조)를 열고 Java 11을 선택했지만 Android Studio를 다시 시작해도 도움이 되지 않았습니다.

    Enter image description here

  2. 그런 다음 Settings(설정)에서 Java 경로를 변경했지만(승인된 답변 참조) 도움이 되지 않았습니다.설정하셔야 합니다.

  3. 시스템 했고 윈도우를 변경했습니다.JAVA_HOME.

    (간단한 방법: 실행cmd과 같이 기록합니다.setx /M JAVA_HOME "C:\Program Files\Java\jdk-11.0.11"Android Studio (Android Studio)

    +X를 누르고 "시스템"을 누른 다음 "va"를 입력합니다.

    Enter image description here

    Enter image description here

    버튼과 "Browse Directory..."를 누른 다음 JRE(또는 JDK) 폴더를 선택했습니다.bin)의 자바 11.그 다음, 및 (항상).

    Enter image description here

  4. 가 요어열을 .cmd을 입력하고 다음을 입력합니다.%JAVA_HOME%다음과 같은 오류가 발생했습니다.

    'C:\Program'은 내부 또는 외부 명령, 작동 가능한 프로그램 또는 배치 파일로 인식되지 않습니다.

    윈도우에서 JAVA_HOME 변수를 설정하는 것을 보고, 우리가 대체해야 한다는 것을 알았습니다.Program Files와 함께Progra~1(예, DOS 트릭은 여전히 작동합니다.)따라서 아래 그림과 같이 JAVA_HOME을 다시 교체합니다(C:\Progra~1\안드로이드\Androi~1\jre).

    Enter image description here

  5. Android Studio를 다시 시작하거나 컴퓨터를 재설정합니다.

이렇게 간단한 방법으로 해결할 수 있습니다.

  1. https://www.oracle.com/java/technologies/javase-jdk16-downloads.html 으로 이동합니다.

  2. 시스템의 JDK ZIP 파일을 다운로드합니다.(Windows의 경우)

  3. PC 기본 디렉토리 아래의 높은 권한을 가진 모든 폴더에서 추출

  4. 이제 열고 menFile* → Project 구조에 있는 Android 스튜디오 프로젝트 구조로 이동합니다.

  5. 그리고 JDK 버전의 압축을 푼 디렉토리를 여기에 붙여넣습니다.보시는 바와 같이 제 것은 현재 JDK 16이며 사진과 같이 해당 디렉토리에 설치되어 있습니다.

    Enter image description here

11개의 JDK를 다시 다운받았는데 작동합니다.이렇게 하면 프로젝트를 캐시, 빌드 및 재구성할 필요가 없으므로 시간이 절약됩니다.

Downloading new JDK (pick version 11 again or a later version)

Android Studio에서 Java 11이 필요한 종속성 중 하나를 업데이트했을 때 이 오류가 발생했습니다.다음 단계를 수행하면 됩니다.

  1. Java 11을 다운로드합니다.Mac의 경우 .dmg 파일을 다운로드하고 Windows의 경우 ZIP 파일을 다운로드합니다.링크: Java 11 다운로드

  2. Android 스튜디오에서 옵션 선택

    Enter image description here

    단계에 따라 새로 저장한 Java SDK를 선택합니다.

    enter image description here

    단계에 따라 새로 저장한 Java SDK를 선택합니다.

    Enter image description here

    (단계에 따라 새로 저장한 Java SDK를 선택합니다.)

Android Studio 15(Dolphin)로 업그레이드할 때 이 오류가 발생했는데, 수정하기가 너무 쉽습니다.이 대답은 가장 쉽고, 빠르고, 최고입니다.

Android Studio에서 저는 다음을 수행했습니다.

기본 설정 → 빌드, 실행, 배포빌드 도구 → *Gradle.Java 11 또는 12 등을 선택합니다.

쉬운 평화

사진을 보세요.

Enter image description here

다음과 같은 방법으로 작업할 수 있습니다(File → Build 옵션 포함).

Menu File -> Build option

Android Studio에서 저는 다음을 수행했습니다.

기본 설정 → 빌드, 실행, 배포빌드 도구 → Gradle

진정해요.

Preferences->Build,Execution,Deployment->Build Tools-> Gradle

MS App Center를 사용하는 경우 Android 프로젝트에서 Java 11을 사용할 때 동일한 문제가 발생할 수 있습니다.MS App Center 문제에 대한 해결책을 찾고 있는 경우.이것이 당신을 도울지도 모릅니다!

  • 에 가다https://appcenter.ms/users/user1/apps/yourapp/build/branches
  • 다음으로 이동하려면 설정 아이콘을 클릭하십시오.Build configuration
  • 까지 아래로 스크롤합니다.Environment그리고 켜십시오.
  • JAVA_HOME$(JAVA_HOME_11_X64)

Enter image description here

Mac에서는 JAVA_HOME을 Android Studio에 내장된 JDK 11로 설정하는 것만 도움이 되었습니다.

명령줄에서 다음 명령을 사용하여 수행했습니다.

export JAVA_HOME=ENTER_PATH_TO_JDK_HERE

PATH_TO_JDK비슷한 것일 수도 있습니다./Users/userName/Library/Application\ Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/203.7583922/Android\ Studio.app/Contents/jre/Contents/Home

저도 같은 문제를 겪고 있었어요

Android Gradle 플러그인을 실행하려면 Java 11이 필요합니다.

메뉴 설정빌드, 실행, 배포빌드 도구 → Gradle에서 Gradle JDK, "JDK 1.9"을 "Android Studio SDK default JD11.0.11"로 대체하여 해결합니다.

여기에 있는 모든 솔루션은 Java 11에 유용합니다.그러나 Java 11로 업그레이드하지 않으려면 아래와 같이 Android Gradle 플러그인(ADP)을 4.X로 다운그레이드하면 됩니다.

Enter image description here

macOS 사용자용

macOS에 번들된 JDK는 1.8인데 지금은 11개가 필요합니다.Gradle이 Android Studio의 JDK를 사용하여 프로젝트를 빌드하도록 합니다.

로 로파<PROJECT_ROOT>/gradle.properties: 예:

org.gradle.java.home=/Users/.../Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/.../Android Studio.app/Contents/jre/Contents/Home

참고: Jetbrain Toolbox를 사용하지 않고 Android Studio를 설치한 경우/Application대신 이 경로를 사용합니다(@AndrewBekhtold 덕분).

org.gradle.java.home=/Applications/Android Studio.app/Contents/jre/Contents/Home

현재 Android Studio Arctic Fox(4.2)를 사용하는 경우:

  • Gradle JDK를 수동으로 설정할 수 있습니다(기본 설정 → 빌드 도구 → GradleGradle JDK(JDK 11 사용 또는 다운로드).
  • 기본 설정을 복원하고 모든 프로젝트에서 이전 팁을 수행하지 않음([파일] → [IDE 설정 관리] →
  • 최신 버전의 경우 Windows 컴퓨터에서 사용할 수 있습니다.

  • 메뉴 파일 → 프로젝트 구조

    Project

  • 설치한 컴퓨터에서 JDK 11을 선택합니다.

  • 및 을 클릭합니다.

  • 변경한 후 Android Studio 다시 시작

  • 자, 이제 가도 됩니다.

Enter image description here

Visual Studio Code가 있는 Flooth 프로젝트의 경우

gradle.properties 파일에 추가합니다.

org.gradle.java.home=<path to JDK 11>

예:

C:\\Program Files\\Java\\jdk-11.0.15

gradle.properties

나는 Gradle이 Android Studio 설정에 관계없이 시스템에 설치된 Java 버전을 호출한다고 결론 내렸습니다.

macOS에서 다음 명령을 사용하여 시스템에 설치된 Java 버전 목록을 확인합니다.

/usr/libexec/java_home -V

그 중 자바 11 이상이 없으면 문제의 작성자와 같은 오류가 발생합니다.

해결책은 Java 11 이상을 설치하는 것입니다.

은 폴더에 심볼릭 링크를 입니다.~/Library/Java/JavaVirtualMachines/Android Studio에 내장된 JRE에 다음 명령을 사용합니다.

ln -s "/Applications/Android Studio.app/Contents/jre" "~/Library/Java/JavaVirtualMachines/Android Studio Default JRE"

이 을 또한이줄다추수있다니습가할음에에 할 수 .~/.zshenv:

export JAVA_HOME=/usr/libexec/java_home

필요한 경우 다양한 Java 버전에 대한 설치 경로를 얻을 수 있습니다.

/usr/libexec/java_home -v 11

또는

/usr/libexec/java_home -v 1.8

⚠304 참고: 이 오류가 발생하는 경우 해결책이 됩니다.GitHub Actions Pipeline

프로젝트에서 Java 11을 사용하고 있지만 응용 프로그램을 빌드하는 GitHub 작업 파이프라인이 Java 1.8을 사용하도록 설정되어 있으면 이 오류가 발생합니다.

이 문제를 해결하려면 다음을 교체합니다.

      - name: set up JDK 1.8
        uses: actions/setup-java@v1
        with:
          java-version: 1.8

포함:

      - name: set up JDK 11
        uses: actions/setup-java@v3
        with:
          distribution: 'zulu'
          java-version: 11

이것을 gradle.properties 파일에 추가하여 해결했습니다.

org.gradle.java.home=/usr/lib/jvm/java-11-openjdk-amd64

그러나 Java 11이 다른 디렉토리에 있을 수 있습니다.

Windows의 경로 예:

org.gradle.java.home=C\:\\Program Files\\Java\\jdk-13.0.2

처음으로 벤치마킹 샘플을 실행하려고 할 때 비슷한 문제가 발생했습니다.

샘플을 실행하는 지침은 실행하는 것이었습니다.

./gradlew macrobenchmark:cC

IDE 터미널에서, 하지만 저의 경우에도 같은 오류가 발생했습니다.

저는 위의 M Tomczynski로부터 위의 승인된 답변을 시도했지만, 그것은 저에게 효과가 없었습니다.저는 가 이것기구결생각다니합과고라에 대한 합니다.JAVA_HOME(여기에서 확인할 수 있습니다).

이것은 또한 옵션 2, 변경을 의미합니다.JAVA_HOME구성, 옵션이 아닙니다.

하지만 저에게 효과가 있었던 변화는 위의 제안 중 옵션 3이었습니다.하고, 을 위의답의자바 11경로확추가다니습에 했습니다.gradle.properties그런 다음 IDE 프롬프트에 따라 동기화하고 macrobenchmark gradle 명령을 다시 실행했습니다.

org.gradle.java.home=/Applications/Android Studio Preview.app/Contents/jre/Contents/Home

Android Studio Arctic Fox(4.2)에서 Gradle JDK를 11로 변경하는 것이 저에게 도움이 되었습니다.

1단계:

메뉴 파일 → 설정 빌드, 실행, 배포빌드 도구 → Gradle로 이동합니다.

2단계:

Gradle JDK를 Gradle Projects 아래의 11로 변경합니다.

3단계:

프로젝트 적용 및 재구축!

Android Studio의 터미널에서 이 문제가 발생하면 사용자 환경의 JAVA_HOME을 Java 11로 구성하고 Preferences에서 Gradle JDK가 해결할 수 없는 문제를 설정해야 합니다.터미널에서 Gradle을 실행하는 것과 IDE에서 Gradle을 실행하는 것은 동일한 프로세스가 아니며 서로 다른 JDK 위치를 사용하는 것 같습니다.

wrapper.properties에 Java Home 경로를 추가합니다.

Android Studio Preferences에서 Gradle JDK를 변경하는 것은 저에게 효과가 없었습니다.

하지만 저는 JDK를 수정할 수 있었습니다.org.gradle.java.home의 경로gradle-wrapper.properties파일.

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-all.zip

# I had to add this line (macOS)
org.gradle.java.home=/Applications/Android Studio.app/Contents/jre/Contents/Home

메뉴로 이동하여 JAVA_HOME 경로를 찾았습니다. File → Project Structure → SDKs → 사용할 JDK Home 경로를 선택합니다.

Enter image description here

그 후 다시 Gradle gradlewWrapper () 명령을 실행할 수 있게 되었습니다.

Android Studio 4.2(Arctic Fox), 2020.3.1 패치 3에서는 이전 답변 중 어떤 것도 작동하지 않았습니다.

추가만org.gradle.java.home=<Path-to-JDK-v11>로.gradle.properties제 경우엔 효과가 있었어요

Linux를 사용하는 경우 다음을 추가합니다.org.gradle.java.home=/opt/android-studio/jre.

JDK 11을 사용하지 않고 JDK 1.8을 사용하려면 아래와 같이 Android 플러그인을 되돌리면 됩니다.

plugins {
    id 'com.android.application' version '4.2.0' apply false
    id 'com.android.library' version '4.2.0' apply false
}

언급URL : https://stackoverflow.com/questions/66980512/android-studio-error-android-gradle-plugin-requires-java-11-to-run-you-are-cur

반응형