Flutter.io Android 라이선스 상태 알 수 없음


85

[!] Android 툴체인-Android 장치 용 개발 (Android SDK 27.0.3)

• Android SDK a .. \ Android \ sdk • Android NDK 위치가 구성되지 않음 (선택 사항, 기본 프로파일 링 지원에 유용) • Platform android-27, build-tools 27.0.3 • Java 바이너리 위치 : C : \ Program Files \ Android \ Android Studio \ jre \ bin \ java • Java 버전 OpenJDK 런타임 환경 (빌드 1.8.0_152-release-1024-b02) X Android 라이선스 상태를 알 수 없습니다.

Flutter Doctor를 실행할 때 Android Sdk에서 오류가 발생하지만 여전히 내 기기에서 빌드 / 실행할 수 있습니다. 이 문제를 해결하는 방법이 궁금했습니다. 나는 지난주 에이 문제가 없었기 때문에 무슨 일이 일어 났는지 잘 모르겠지만 가장 최신 버전의 Android sdk를 다운로드했다고 생각합니다.

새로운 문제

주석에서 몇 가지 가능한 수정 사항을 따른 후 새로운 문제가 발생했습니다. 새로운 jdk10과 함께 최신 버전의 android sdk P, 8 및 7을 설치했습니다. 아직 충분히 업데이트되지 않았습니다.

C:\Flutter\flutter>flutter doctor --android-licenses
A newer version of the Android SDK is required. To update, run:
C:\Users\tdmil\AppData\Local\Android\sdk\tools\bin\sdkmanager --update

C : \ Flutter \ flutter> C : \ users \ username \ appdata \ local \ android \ sdk \ tools \ bin \ sdkmanager.bat --update

Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema
        at com.android.repository.api.SchemaModule$SchemaModuleVersion.<init>(SchemaModule.java:156)
        at com.android.repository.api.SchemaModule.<init>(SchemaModule.java:75)
        at com.android.sdklib.repository.AndroidSdkHandler.<clinit>(AndroidSdkHandler.java:81)
        at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:73)
        at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlSchema
        at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582)
        at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:190)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499)
        ... 5 more

향후 참조에 유용 할 수 있습니다. 저는 Windows 10을 사용하고 있었고 JDK 11 버전이있었습니다. 대부분의 사람들이 제안한대로 JDK를 버전 8로 다운 그레이드했습니다 flutter doctor. 그런 다음 . 여전히 라이센스를 수락해야한다고합니다. 그런 다음 모든 라이센스 계약을 실행 flutter doctor --android-licenses하고 말했습니다 yes. 마지막으로 문제가 사라졌습니다. :). Take away is downgrading to JDK 8 will fix the issue
Gihanmu

답변:


74

Android SDK를 업데이트 한 경우 라이선스가 변경되었을 수 있습니다. 업데이트를 수행 한 방법에 따라 변경 사항을 수락하라는 메시지가 표시되거나 표시되지 않을 수도 있고, Flutter가 이해할 수있는 방식으로 수락했다는 사실을 저장하지 못할 수도 있습니다.

해결하려면 실행 해보십시오.

flutter doctor --android-licenses

그러면 라이센스를 수락하라는 메시지가 표시됩니다 (입력 y하고 Enter를 누르는 경우 먼저 물어볼 수 있습니다 . 메시지가 표시되어야 함).

당신은 여전히 그 일을 한 후 문제가 발생하면, 그것은 가치에 새로운 버그를 열어이 될 수도 떨림 Github의 저장소 , 또는 같은 기존의 문제에 대해 코멘트를 추가하는 이 일 이 무엇있는 거 볼 수있을 수 있기 때문이다.


10
최신 버전의 Android SDK가 필요하다는 메시지가 표시됩니다. 업데이트하려면 C : \ Users \ abc \ AndroidSDK \ tools \ bin \ sdkmanager --update를 실행합니다. 어떻게해야합니까?
Huzaifa Asif

@HuzaifaAsif 해당 명령을 실행 해 보셨습니까? 문제가 해결되기를 바랍니다. 실패하면 다른 질문을 찾거나 새로운 질문을 할 수 있습니다.
rmtmckenzie 2010 년

2
@HuzaifaAsif, 나는 또한이 문제에 두 번 직면했습니다 .Tommie C가 아래에 대답했듯이 java 1.8을 수동으로 설치하고 $ JAVA_HOME을 bin 폴더로 설정 한 다음 flutter doctor --android-licenses를 실행하고 모든 라이센스를 수락하십시오. 도움이 되었기를 바랍니다.
Deepak Joshi

@HuzaifaAsif 어떻게 SDK를 다시 설치했는지 ... Android Studio 버전 3.6을 사용하고 있기 때문에이 오류가 발생합니다
Mahmoud Harooney

주의! 이것은 Java 8을 사용하는 저에게만 효과적이었습니다.
Lucas Saldanha

48

오류:

Exception in thread "main" java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema
        at com.android.repository.api.SchemaModule$SchemaModuleVersion.<init>(SchemaModule.java:156)
        at com.android.repository.api.SchemaModule.<init>(SchemaModule.java:75)
        at com.android.sdklib.repository.AndroidSdkHandler.<clinit>(AndroidSdkHandler.java:81)
        at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:73)
        at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.annotation.XmlSchema
        at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582)
        at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:190)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499)
        ... 5 more

현재 SDK 버전이 Java 9와 호환되지 않기 때문에 발생합니다.

따라서이 문제를 해결하려면 Java 버전을 Java 8로 다운 그레이드하거나 해결 방법을 사용하여 터미널에서 다음 옵션을 내보낼 수 있습니다.

리눅스 :

export JAVA_OPTS='-XX:+IgnoreUnrecognizedVMOptions --add-modules java.se.ee'

Windows :

set JAVA_OPTS='-XX:+IgnoreUnrecognizedVMOptions --add-modules java.se.ee'

그리고 당신은 (리눅스에서 프로필 파일에서 JAVA_OPTS를 내보낼 수 있습니다, 그것은 스틱 만들기 위해 .zshrc, .bashrcWindows에서 영구적 환경으로 등을) 또는 추가 할 수 있습니다.


그런 다음 flutter 또는 sdkmanager 명령을 입력 할 수 있습니다.

플러터 :

flutter doctor --android-licenses

sdkmanager :

sdkmanager --licenses

라이센스에 동의해야 할 경우 Y를 입력하십시오.

추신. 이것은 Java EE 모듈이없는 Java 11 / 11 +에서는 작동하지 않습니다. 이 옵션이 좋은 생각이라면 Java 버전을 다운 그레이드하거나 Flutter 업데이트를 기다리세요 .

참조 : JDK 11 : Java EE 모듈의 끝


4
Java 11과 8이 모두 설치되어있는 경우 또 다른 옵션은 JAVA_HOME 지점을 java8로 내보내는 것입니다.export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
Cristiano

1
내가 Windows에서 환경 변수에 JDK 8에 JAVA_HOME을 변경하며 일
GabrielBB

2
이 같은 작동하지 않는 java.se.ee자바의 최신 버전에 제거
Phani Rithvij

1
Java 11에서는 그렇게 할 수 없습니다. Java 8을 설치해야합니다. 이 답변보기
Vahid

29

올바른 해결책은 안드로이드 스튜디오가 설치되어 있다면

  1. SDK 관리자 열기
  2. SDK 도구에서 하단의 오래된 패키지 숨기기를 선택 취소하십시오.
  3. 그러면라는 옵션이 표시됩니다. Android SDK Tools (Obsolete)

여기에 이미지 설명 입력

  1. 그것을 확인하고 신청하고 스튜디오에서 패키지를 다운로드하게하십시오.
  2. 일단 명령 flutter doctor을 실행 flutter doctor --android-licenses 하면 이제 라이센스 명령을 실행하면 실행 하라는 메시지가 표시 됩니다. y를 눌러 모든 라이센스를 수락하면 문제가 해결됩니다.

여기에 이미지 설명 입력


이것이 상위 답변과 다른가요?
tdmiller

1
이것은 2020 년 3 월 18 일 현재 Mac 용 공식 문서입니다 . flutter.dev/docs/get-started/install/…을 참조 하세요 . 그것은 A의 알려진 문제 .
yair

1
링크 주셔서 감사합니다 @yair는 그것을 몰랐습니다
maheshmnj

15

Flutter를 설치하는 데 불편 함 때문에이 글을 쓰고 있습니다. 대부분의 문제는 간단한 구성 문제로 인해 발생합니다. 문제를 해결하려면 다음 단계를 따르십시오.

1 단계 : 안드로이드 라이선스- 안드로이드 라이선스로 대부분의 경우 해결

당신이 여기에 있기 때문에 당신은 안드로이드 도구 체인에 대한 "Android 라이센스 상태 알 수 없음"문제에 도달했습니다 flutter doctor --android-licenses. 모든 구성에 능숙하다면. 예를 묻고 y와 Voila를 눌러야합니다. 그러나 그것이 표시되면

여기에 이미지 설명 입력Android sdkmanager 도구를 찾을 수 없습니다 (C\Users\__\local\Android\sdk\tools\bin\sdkmanager). 2 단계로 이동

2 단계 : Android Studio에서 SDK Manager 설치

Android Studio를 열고 해당 페이지 File-> settings->System settings(left tab) ->Android SDK,로 이동하여 SDK Tool section사용하지 않는 패키지 숨기기를 선택 취소 Android SDL tools(obsolete)하고 적용을 선택 하고 누릅니다.

여기에 이미지 설명 입력 SDK를 설치하고이 경로가 있는지 확인하여 확인합니다.(C\Users\__\local\Android\sdk\tools\bin\sdkmanager)

3 단계 : 1 번 반복

새 명령 줄에서 설치 후 1 단계를 반복하여 작동하는지 확인하고 그렇지 않으면 4 단계로 이동합니다.

4 단계 : sdkmanager --update

sdk를 업데이트하라는 메시지가 표시되며 터미널에 지정된 명령을 실행하기 만하면 C\Users\__\local\Android\sdk\tools\bin\sdkmanager --update됩니다. 실행 중이면 시원합니다. 완료하고 1 단계를 반복하십시오. 그렇지 않으면 java.lang.NoClassDefFoundError: javax/xml/bind/annotation/XmlSchema기타 와 같은 예외가 발생 java_error 하면 Java가 설치되지 않았거나 올바른 버전이 아님을 의미합니다. 다음 단계로 이동

5 단계 : JAVA 8.1 및 JAVA_HOME 경로.

JAVA 8.1을 설치하고 JAVA_HOME 경로를 설정합니다. 버전 8.1인지 확인하십시오 (무료 계정 등록 및 Oracle 8.1 버전에서 다운로드, 위 11+ 이상은 flutter에서 작동하지 않음을 기억하십시오. 여기에 이미지 설명 입력

참고 : by yaniv maymon : 컴퓨터에 Java가 이미 설치되어 있고 sdkmanager --update가 여전히 작동하지 않는 경우. 환경 변수로 이동하여 "JAVA_HOME"경로를 jdk 폴더로 업데이트하십시오. 그런 다음 명령 프롬프트를 종료하고 다시 열고 업데이트 명령을 실행합니다.

6 단계 : 마지막 단계

경로를 올바르게 설치 및 설정 한 후 C\Users\__\local\Android\sdk\tools\bin\sdkmanager --update 새 터미널 에서 명령을 실행 하면 작동합니다.

7 단계 : flutter doctor를 다시 실행합니다 flutter doctor --android-licenses. 명령을 실행하라는 메시지가 표시 됩니다. 그래서 flutter doctor --android-licenses 터미널에서 실행 하고 물으면 y를 누르십시오.


컴퓨터에 이미 Java가 설치되어 있고 sdkmanager --update가 여전히 작동하지 않는 경우. 환경 변수로 이동하여 "JAVA_HOME"경로를 jdk 폴더로 업데이트하십시오. 그런 다음 명령 프롬프트를 종료하고 다시 열고 업데이트 명령을 실행합니다.
yaniv maymon

11

내 문제를 해결하는 단계는 다음과 같습니다.

  1. 터미널 열기
  2. 유형 flutter doctor --android-licenses
  3. 를 눌러 y받아들이는이 프로세스는 여러 번 발생 할 수 있습니다. 끝난!

8

JDK 8을 사용해야하는 이 솔루션 을 찾았습니다 (지금 다운로드하려면 계정이 필요합니다!)-Android Studio와 함께 제공되는 임베디드 OpenJDK를 사용하세요.

이것을 귀하 ~/.profile또는 유사한 항목에 추가하십시오 .

# Use the JDK embedded with Android Studio for command-line builds
export JAVA_HOME='/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home'

를 통한 명령 줄 빌드 gradlew및 기타 정상적으로 작동하는 스크립트는 Android 스튜디오 2.2 이상과 함께 제공되는 SDK 버전을 사용합니다.

* 내 Mac은 여전히 ​​기본 Java 7을 사용하고있었습니다.


5

이것은 또한 # 16025 와 동일한 내 문제였습니다.

스레드 "main"의 예외 java.lang.NoClassDefFoundError : javax / xml / bind / annotation / XmlSchema이 문제는 일반적으로 이전에 Java 9를 설치했을 때 발생하는 것 같습니다. BTW 그것은 android-sdk와 호환되지 않습니다 여전히 존재하는 경우 Java 9 JDK를 제거하십시오.

일반적으로 JAXB API는 Java EE API로 간주되므로 Java SE 9의 기본 클래스 경로에 더 이상 포함되지 않습니다. Java 9에는 모듈 개념이 도입되었으며 기본적으로 java.se 집계 모듈은 클래스에서 사용할 수 있습니다. 경로 (또는 모듈 경로). 이름에서 알 수 있듯이 java.se 집계 모듈에는 전통적으로 Java 6/7/8과 함께 번들로 제공되는 Java EE API가 포함되어 있지 않습니다. 다행히 JDK 6/7/8에서 제공되는 이러한 Java EE API는 여전히 JDK에 있지만 기본적으로 클래스 경로에 없습니다. 추가 Java EE API는 다음 모듈에서 제공됩니다.

Java9 / 10이 설치된 경우 해결 방법

  1. 편집기에서 sdkmanager를 엽니 다.
  2. DEFAULT_JVM_OPTS 추가

바꾸다

DEFAULT_JVM_OPTS='"-Dcom.android.sdklib.toolsdir=$APP_HOME"'

이것으로

DEFAULT_JVM_OPTS='"-Dcom.android.sdklib.toolsdir=$APP_HOME" -XX:+IgnoreUnrecognizedVMOptions --add-modules java.se.ee'
  1. 파일을 저장하고 편집기를 종료 한 다음 명령을 다시 실행하십시오.

Android 라이선스 상태 알 수없는 문제의 경우 다음 단계로 해결하려고했습니다.

  1. 터미널 열기
  2. Android SDK 위치 C : \ Users % user % \ AppData \ Local \ Android \ Sdk \ tools \ bin 또는 ~ / Library / Android / sdk / tools / bin으로 이동합니다.

  3. 다음 명령을 실행합니다. ./sdkmanager --license

참고 문헌

Java 9에서 sdkmanager --list (Android SDK) 실행 실패

Java 9에서 java.lang.NoClassDefFoundError : javax / xml / bind / JAXBException을 해결하는 방법


그 이후로 파일이 약간 변경된 것처럼 보이는 솔루션을 시도했지만 여전히 필요한 수정 작업을 수행했지만 여전히 운이 없습니다. 나는 여전히 응용 프로그램을 실행할 수 있기 때문에 나중에 이것을 수정하는 업데이트를 희망 할 것입니다. 어쨌든 감사합니다!
tdmiller

4

GitHub 문제 커뮤니티에서 제공되는이 줄은 내 문제를 해결했으며, 다른 사람에게 도움이되는 경우를 대비해 제공됩니다.

@rem Execute sdkmanager

"%JAVA_EXE%" %DEFAULT_JVM_OPTS% -XX:+IgnoreUnrecognizedVMOptions --add-modules java.se.ee %JAVA_OPTS% %SDKMANAGER_OPTS% -classpath "%CLASSPATH%" com.android.sdklib.tool.sdkmanager.SdkManagerCli %CMD_LINE_ARGS%

4

내 해결책은 다음과 같습니다.

  1. SDKMan 설치

    $ curl -s "https://get.sdkman.io" | bash

  2. bash_profile 설정

    $ source "$HOME/.sdkman/bin/sdkman-init.sh

    $ source ~/.bash_profile

  3. java sdk를 찾아서 설치하려는 버전을 선택하십시오.

    $ sdk ls java

    $ sdk install java 8.0.192-zulu

  4. Flutter Doctor 경고 메시지를 복사하여 sdkmanager를 업데이트하십시오.

    $ /Users/YourUserName/Library/Android/sdk/tools/bin/sdkmanager --update

  5. 1 ~ 4 회 후 다시 실행

    $ flutter doctor --android-licenses


중지! java 8.0.192-zulu를 사용할 수 없습니다. 가능한 원인 : * 8.0.192-zulu는 유효하지 않은 버전입니다. * Java 바이너리는 Darwin과 호환되지 않습니다. * java는 아직 출시되지 않았습니다.
Hos Mercury

4

아래의 sdk 명령 줄 도구 (최신)를 Android 스튜디오에 설치하면됩니다. 여기에 이미지 설명 입력


이것은 나에 의해 너무 놓쳤다 :) 감사합니다
Abhishek Thapliyal

1
실행하기 전에이 작업을 수행해야했습니다flutter doctor --android-licenses
geg

3

MacOS 10.15 : Android 스튜디오 3.5.1 :

나를 위해 작동하는 솔루션은 Java 환경 도구 jenv ( homebrew 를 통해 설치됨) 를 사용하는 것이 었습니다 . 이 도구 는 Java 버전간에 전환 할 때 $ JAVA_HOME을 변경합니다 .

제 경우에는 여러 Java 버전이 설치되어 있고 현재 사용중인 글로벌 버전이 기본값이었습니다. 또한 이 도구를 사용할 때 $ JAVA_HOME 환경 변수 를 주석 처리해야합니다 .bash_profile.

터미널에서 jenv global 1.8최신 버전 대신 Java 1.8을 실행하도록 입력 했습니다 (여러 버전이 설치되어 있습니다).

그 후 :

flutter doctor --android-licenses

또는

sdkmanager --licenses

둘 다 잘 작동합니다.

참고 : $ JAVA_HOME 환경 변수를 다시 정의해야하는 경우 터미널 셸을 종료하고 다시 열어야 할 수 있습니다.


3

보내다--참조

여기에 해결책이 있습니다. SDK 관리자를 열고 Hide Obsolete Packages

여기에 이미지 설명 입력

이제 Android SDK Tools (Obsolete) 26.1.1나타납니다. 패키지를 선택하고 확인 apply button버튼을 누르십시오. sdk를 다운로드합니다. 그때restart Android 스튜디오

좋아, 이제 실행 flutter doctor하면 아래와 같이 긍정적 인 결과를 얻을 수 있습니다.

PS D:\Workplace\flutter_projects> flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, v1.12.13+hotfix.8, on Microsoft Windows [Version 10.0.18363.657], locale en-MY)

[√] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
[√] Android Studio (version 3.6)
[√] VS Code (version 1.42.1)
[√] Connected device (1 available)

• No issues found!

PS D:\Workplace\flutter_projects> flutter doctor --android-licenses -v
All SDK package licenses accepted.======] 100% Computing updates...

운영 flutter doctor --android-licenses 하고 요청되면 Y를 입력하십시오.

필요한 경우 https://dl.google.com/android/repository/sdk-tools-windows-4333796.zip(Windows 사용자 용)에서 수동으로 패키지를 다운로드 할 수 있습니다 . 이 튜토리얼이 해결책을 찾는 사람들에게 도움이되기를 바랍니다.


이것은 정말 나를 도와줍니다 :)
OL

2

Linux를 사용하고 flutter doctor --android-licenses.

라이선스를 수락하려고 할 때 설정을 만들 수 없음 경고 계속 표시되는데, SDK 위치를 지정하여 수정했습니다.

sdkmanager --sdk_root=/home/adel/bin/android-sdk --licenses

그런 다음 Sdkmanager가 인쇄했습니다. 모든 SDK 패키지 라이선스가 승인되었습니다.

그러나 Flutter는 Android 라이선스 상태 알 수없는 오류를 계속 제공했습니다 . 그리고 전화를 시도 flutter doctor --android-licenses하면 동일한 설정 오류를 만들 수 없습니다 .

이 문제를 해결하기 위해 $ {your android tools location} / tools / bin /에 있는 sdkmanager스크립트를 편집 하고 마지막 줄을 다음과 같이 변경했습니다.

exec "$JAVACMD" "$@"

에:

exec "$JAVACMD" "$@" --sdk_root=/home/adel/bin/android-sdk

이렇게하면 Flutter가 필요한 sdk_root 인수를 전달하는 동안 sdkmanager를 호출하게됩니다 flutter doctor --android-licenses.

Java 8을 사용할 필요가 없었습니다.


답장을 보내 주셔서 감사합니다. 이로 인해 문제가 해결되었습니다. 누군가 반대표를 던진 이유를 이해할 수 없습니다. 다시 감사합니다.
marijnz0r

나를 위해 일한 유일한 인터넷 솔루션! 고마워 친구! :)
Punita Ojha

1

flutter SDK 루트 폴더에서 flutter_console.bat 파일을 열고 명령을 실행합니다.

flutter doctor --android-licenses

새로 다운로드 한 Android SDK 업데이트 라이선스에 동의합니다. Android SDK를 다운로드하고 업데이트 할 때마다 실행해야합니다.



1

Java 버전을 1.8로 다운 그레이드하고 해결되었습니다. 여기에 다운로드 링크가 있습니다. JDK8

JDK8 설치 후 다음 명령을 실행하십시오.

   flutter doctor --android-licenses

1

내 환경 : Windows 10 64bit, OpenJDK 14.0.2

초기 오류는 위에보고 된 것과 같습니다.

오류가 해결 된 후

  1. 환경 변수 PATH & JAVA_HOME에서 " C : <installation-folder> \ openjdk-14.0.2_windows-x64_bin \ jdk-14.0.2 "를 "* C : \ Program Files \ Android \ Android Studio \ jre * " 로 대체했습니다 .
  2. flutter doctor --android-licenses를 실행 하고 프롬프트에 대해 y 를 선택 했습니다.



0
  1. Android Studio를 엽니 다.
  2. 파일-> 설정으로 이동합니다.
  3. 를 검색합니다 AndroidSDK.
  4. API 레벨을 최신 버전으로 업데이트하십시오.
  5. 그런 다음 Android Studio를 다시로드합니다.

0

여전히 문제에 직면 해있는 사람 :
Tommie C, Aba 및 다른 소수의 사람들이 아래에 답변했지만 내가 찾은만큼 명확하지 않을 수 있습니다. windows / linux : [ https://www3.ntu.edu.sg/home/ehchua/programming/howto/JDK_Howto.html] 에 설명 된대로 Java 1.8을 수동으로
설치 하고 $ JAVA_HOME 변수 (jdk 경로)를 설정하십시오. Windows에서 jdk 경로 ($ JAVA_HOME) 설정 : [ Windows 7에서 java_home을 설정하는 방법은 무엇입니까? . Linux : [ /ubuntu/175514/how-to-set-java-home-for-java] . 그런 다음 모든 라이선스를 실행 하고 수락합니다. 도움이 되었기를 바랍니다.



flutter doctor --android-licenses


0

이 솔루션을 찾았습니다 JDK 8을 다운로드 한 다음 JAVA_HOME의 다운로드 jdk 파일 경로 이름을 환경 변수의 사용자 변수에 추가합니다.


0

위에서 언급했듯이 동일한 문제에 직면했습니다.

  1. JDK 1.8을 설치하고 JAVA_HOME 환경을 1.8로 설정했습니다. 작동하지 않았습니다.
  2. 내 Android 스튜디오에는 "Android SDK 도구 (구식)"가 표시되지 않았지만 "Android SDK 도구"가있었습니다.

이것은 나를 위해 일한 것입니다.

  1. SDK 관리자에서 "Android SDK 도구"를 삭제합니다.
  2. 먼저 "Hide Obsolete Packages"를 선택 취소 한 다음 "Android SDK Tools (Obsolete)"를 선택하여 다시 설치하고 설치하십시오.
  3. 실행 flutter doctor --android-licenses하고 선택y 프롬프트를
  4. 실행 flutter doctor하면 모든 것이 잘 될 것입니다 !!!!

0

나는 문제에 직면했다. tools폴더도에서 누락 된 Android SDK폴더에 있습니다. 저는 믿습니다 tools폴더 만 설치 한 후 나타납니다Android SDL tools(obsolete ). 이 옵션은 사용할 수 없었습니다.

솔루션 :Java 버전 8에서 버전 12로 업그레이드 하고 도구를 설치할 수있었습니다. Some Android licenses not accepted. To resolve this, run: flutter doctor --android-licenses명령을 제공하는 동안 여전히 오류가 발생할 수 있습니다 flutter doctor -v. 명령을 실행합니다. flutter doctor --android-licenses를 클릭하면 라이센스가 검토됩니다.yes 이 질문이 나타날 때마다 됩니다.Accept? (y/N):

누군가를 도울 것입니다.


0

자작 통 을 사용 하면 할 수 있습니다.

brew cask install android-sdk
mkdir ~/Library/Android/sdk/tools
ln -s /usr/local/bin/ ~/Library/Android/sdk/tools/bin
flutter doctor --android-licenses

0

들어 윈도우 사람들 단기적인 해결책은 JDK8로 다운 그레이드하는 것입니다. flutter가 Android SDK가> JDK8에서 작동하는 문제를 곧 해결하기를 바랍니다.


0

내 Ubuntu 20.04에 대한 많은 분석을 수행 한 후 솔루션을 찾았습니다.

나를 위해 오류는 쓰기 권한 /home/rk/Android/Sdk/tools/bin/sdkmanager이 누락되었습니다 .

  1. chmod +w home/rk/Android/Sdk/tools/bin/sdkmanager

그런 다음 아래 명령을 실행하십시오.

  1. flutter doctor --android-licenses

라이선스를 자동으로 처리합니다.


0

다음의 간단한 단계를 따르십시오.

  1. 도구, SDK 관리자, Android SDK를 차례로 클릭합니다.
  2. SDK 업데이트 사이트 탭을 클릭합니다.
  3. https : //를 사용하여 가져올 https : //..sources 확인란을 선택합니다.
  4. 적용 및 확인을 클릭하십시오.
  5. 이제 android studio를 다시 시작하십시오.
  6. SDK 도구로 이동하여 사용하지 않는 패키지 숨기기 확인란을 선택하십시오.
  7. 패키지가 나타날 때까지 약 1 분 정도 기다리십시오.
  8. 그런 다음 "android SDK 도구 (구식)"라는 패키지를 선택하고 확인을 누릅니다.
  9. 패키지를 계속 설치하십시오.
  10. 설치 후 android studio를 다시 시작하고 cmd를 다시 시작한 다음 flutter doctor를 실행하십시오.
  11. 몇 분이 걸리며 작동합니다.

-1

경고 :이 답변은 JAVA_HOME 환경 변수와 그 방향에 문제가있는 경우 유용합니다. 이 문제가없는 경우이 솔루션을 시도하지 마십시오.

이 오류가 있고 flutter doctor --android-licenses 또는 sdkmanager --licenses로 시도했는데 JAVA_HOME 환경 변수에 문제가있는 경우이 내용을 읽어야합니다.

MacOS Catalina 개미가 있습니다. 다음 단계를 통해이 문제를 성공적으로 해결할 수 있습니다.

  1. 터미널 열기
  2. 유형 : open -e .bash_profile (거의 두 가지 환경 변수 : flutter 및 JAVA_HOME이 표시됩니다)
  3. 원하는 경우 textEdit 파일에 작성된 JAVA_HOME 환경 변수를 저장하고 JAVA_HOME 환경 변수를 삭제하십시오. bash_profile을 저장하십시오.
  4. 다시 터미널로 이동하여 소스 $ HOME / .bash_profile 실행
  5. Flutter Doctor를 다시 시도하면 더 이상 동일한 오류가 표시되지 않습니다.

궁금한 점이 있으면 알려주세요.


-1

문제를 해결하기 위해 수행 한 작업은 다음과 같습니다. Android Studio / SDK의 이전 사본을 제거 할 필요는 없습니다. Android Studio는 최신 버전을 설치하는 동안이를 처리합니다.

  1. 최신 버전의 Android Studio 다운로드 및 설치
  2. 자습서 의 지침을 따르십시오.
  3. 설치가 완료되면 flutter doctor를 실행 하고 확인하면 문제가 해결되었을 것입니다. 문제가 해결되면 flutter doctor --android-licenses 명령 을 실행할 필요가 없습니다 .
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.