이온 빌드 Android | 오류 : 설치된 빌드 도구를 찾을 수 없습니다. Android 빌드 도구를 설치하세요.


95

ionic 프로젝트의 루트에서 ionic build android 명령을 실행할 때 다음 오류가 발생합니다.

실패 : 예외로 인해 빌드가 실패했습니다.

  • Where : 스크립트 '/home/javad/Desktop/javadApp/platforms/android/CordovaLib/cordova.gradle'줄 : 64

  • 문제 : 루트 프로젝트 'android'를 평가하는 중에 문제가 발생했습니다.

    설치된 빌드 도구가 없습니다. Android 빌드 도구 버전 19.1.0 이상을 설치하세요.

  • 시도 : --stacktrace 옵션으로 실행하여 스택 추적을 가져옵니다. 더 많은 로그 출력을 얻으려면 --info 또는 --debug 옵션과 함께 실행하십시오.

javad@javad:~/Desktop/javadApp$ ionic build android
Running command: /home/javad/Desktop/javadApp/hooks/after_prepare/010_add_platform_class.js /home/javad/Desktop/javadApp
add to body class: platform-android
Running command: /home/javad/Desktop/javadApp/platforms/android/cordova/build 
ANDROID_HOME=/opt/android-sdk
JAVA_HOME=/usr/lib/jvm/default-java
Running: /home/javad/Desktop/javadApp/platforms/android/gradlew cdvBuildDebug -b /home/javad/Desktop/javadApp/platforms/android/build.gradle -Dorg.gradle.daemon=true

FAILURE: Build failed with an exception.

* Where:
Script '/home/javad/Desktop/javadApp/platforms/android/CordovaLib/cordova.gradle' line: 64

* What went wrong:
A problem occurred evaluating root project 'android'.
> No installed build tools found. Please install the Android build tools version 19.1.0 or higher.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 1.564 secs

/home/javad/Desktop/javadApp/platforms/android/cordova/node_modules/q/q.js:126
                    throw e;
                          ^
Error code 1 for command: /home/javad/Desktop/javadApp/platforms/android/gradlew with args: cdvBuildDebug,-b,/home/javad/Desktop/javadApp/platforms/android/build.gradle,-Dorg.gradle.daemon=true
ERROR building one of the platforms: Error: /home/javad/Desktop/javadApp/platforms/android/cordova/build: Command failed with exit code 8
You may not have the required environment or OS to build this project
Error: /home/javad/Desktop/javadApp/platforms/android/cordova/build: Command failed with exit code 8
    at ChildProcess.whenDone (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/superspawn.js:134:23)
    at ChildProcess.EventEmitter.emit (events.js:98:17)
    at maybeClose (child_process.js:743:16)
    at Process.ChildProcess._handle.onexit (child_process.js:810:5)

~ / .profile에는 다음이 있습니다.

내보내기 PATH = $ PATH : / opt / android-sdk / tools

export PATH = $ PATH : / opt / android-sdk / platform-tools

내보내기 PATH = $ PATH : / opt / node / bin

내보내기 JAVA_HOME = / usr / lib / jvm / default-java

export ANDROID_HOME = / opt / android-sdk

$ PATH는 다음과 같습니다.

/ usr / local / sbin : / usr / local / bin : / usr / sbin : / usr / bin : / sbin : / bin : / usr / games : / usr / local / games : / opt / android-sdk / tools : / opt / android-sdk / platform-tools : / opt / node / bin

중요한 문제 :

파일 : /home/javad/Desktop/javadApp/platforms/android/CordovaLib/cordova.gradle | 38 행 :

String[] getAvailableBuildTools() {
    def buildToolsDir = new File(getAndroidSdkDir(), "build-tools")
    buildToolsDir.list()
        .findAll { it ==~ /[0-9.]+/ }
        .sort { a, b -> compareVersions(b, a) }
}

방금 반환 된 / opt / android-sdk / build-tools !!!

에서 / 옵션 / 안드로이드 SDK / 빌드 도구는 내가 가진 폴더 :

추출 된 android-5.1 폴더 : https://dl.google.com/android/repository/build-tools_r22-linux.zip


나를 위해 일하고 있는지 확인 stackoverflow.com/questions/38660955/…
vinod

답변:


54

.NET을 사용 하여 platform-toolsbuid-tools 라는 SDK 패키지를 다운로드하여이 문제를 해결합니다 sdkmanager. sdkmanager.exe 를 사용 하거나 SDK CLI를 사용하는 경우 ~\AppData\Local\Android\sdk\tools\bin다음 명령으로 이동하여 실행할 수 있습니다.

sdkmanager "platform-tools" "platforms;android-26"

또는

sdkmanager "build-tools;27.0.3"

아니면 둘다

그 후 당신은 실행할 수 있어야합니다 ionic cordova run android또는 ionic build android.

참고 : 및 환경 변수를 sdkmanager추가하여 명령을 전역 화 하십시오.~\AppData\Local\Android\sdk\tools~\AppData\Local\Android\sdk\tools\bin


2
오류를 방지하려면 cmd를 관리자로 실행하는 것을 잊지 마십시오. 경고 : "설치 속성 파일을 읽거나 만들지 못했습니다."오류
neustart47

감사합니다. 이것은 빌드 과정에서 저에게 필수적인 단계였습니다.
BarryMode

bin 폴더에서 터미널 오픈 : 명령을 찾을 수 없습니다 sdkmanager 말한다
MJ 몬테

@LasLemieux SDK CLI가 제대로 설치되었는지 확인 해주세요. Windows를 사용하는 경우 sdkmanage.exe라는 파일이 있어야합니다.
Fadhil

43

이 세 가지 명령을 실행하면 Mac에서 문제가 해결됩니다.

export ANDROID_HOME=~/Library/Android/sdk
export PATH=${PATH}:${ANDROID_HOME}/tools
export PATH=${PATH}:${ANDROID_HOME}/platform-tools

복사하기 쉽도록 여기에 한 줄짜리

export ANDROID_HOME=~/Library/Android/sdk && export PATH=${PATH}:${ANDROID_HOME}/tools && export PATH=${PATH}:${ANDROID_HOME}/platform-tools

영구적으로 추가하려면

이 단계를 따르세요:

  1. 텍스트 편집기에서 홈 디렉토리 (예 : /Users/your-user-name/.bash_profile)의 .bash_profile 파일을 엽니 다.
  2. export PATH="The above exports here"파일의 마지막 줄에 추가 합니다. 여기서 your-dir은 추가하려는 디렉토리입니다.
  3. .bash_profile 파일을 저장하십시오.
  4. 터미널을 다시 시작하십시오.

다른 시스템을위한 bash 프로세스에 추가


3
이것은 매번 도움이되지만 터미널을 닫거나 Mac을 다시 시작
Forza

이것은 나를 위해 일했습니다. @Forza를 ~ / .bash_profile에 추가하면 매번 작동합니다.
caden311

실수로 ANDROID_HOME 변수에 해당 PATH 하위 디렉토리가 추가되었습니다. 이걸 정리하면 작동했습니다!
umbyersw

터미널을 다시 시작할 때마다 명령을 다시 실행할 필요가 없도록하려면 어떻게해야합니까?
Ross Rawlins 19

나는 그것을 시도했지만 고정되지 않습니다 터미널을 열 때마다해야합니다.
Ross Rawlins 19 년

30

Android SDK 도구가 없습니다. 다음을 시도하십시오.

android list sdk --all
android update sdk -u -a -t <package no.>

어디 <package no.>입니다 1,2,3,n

-u (--no-ui)  # Headless mode
-a (--all)    # Includes all packages (also obsolete ones)
-t (--filter) # Filter by package index

6
그것은 저를 던지는Filter 19 not supported
아툴 아그라 왈

2
2018 업데이트 : -t android-27버전 27 등에 사용
andersand

21

오류가 말했듯이 '아니오 빌드 도구가 발견 설치' 는 것을 의미한다

1 : 정말 정말 빌드 도구를 찾지 못했습니다.

2 : 빌드 도구를 찾으려면 이러한 경로를 올바르게 정의해야합니다.

UBUNTU (.bashrc) 및 MAC (.bash_profile)의 경로가 동일합니다.

export ANDROID_HOME=/Users/vijay/Software/android-sdk-macosx
export PATH=${PATH}:/Users/vijay/Software/android-sdk-macosx/tools
export PATH=${PATH}:/Users/vijay/Software/android-sdk-macosx/platform-tools

3 : 중요 중요 환경 변수를 설정하는 즉시 evnironmental 변수를 다시로드해야합니다.

//For ubuntu
$source .bashrc 

//For macos
$source .bash_profile

4 : 터미널 체크인

$printenv ANDROID_HOME
$printenv PATH

참고 : printenv에서 변경 사항을 찾지 못한 경우 pc를 다시 시작하고 printenv PATH, printenv ANDROID_HOME을 다시 시도하십시오. 환경 변수를 다시로드하는 명령도 있습니다.

4 : 그런 다음 터미널을 열고 HALF TEXT '$ and'를 쓰고 탭을 누릅니다. 탭을 누르면 전체 '$ android'이름이 표시됩니다. 이는 모든 경로가 올바른지 확인합니다.

5 : 터미널에 $ android를 쓰고 Enter 키를 누릅니다.


18

Android 빌드 도구 버전 19.1.0 이상을 설치하세요.

다음 명령은 Ubuntu에서 Android SDK를 빠르게 업데이트하고 위의 오류를 수정할 수 있습니다.

android list sdk --all
android update sdk -u -a -t 19
android update sdk -u -a -t 20

6
필터 19 및 필터 20은 지원되지 않음
Skizo-ozᴉʞS

1
여기에 같은 @ Skizo-ozᴉʞS
Bhimashankar Mantur

17

ANDROID_HOME 을 잘못된 이전 디렉토리에서 C : \ Users \ Gebru \ AppData \ Local \ Android \ Sdk 로 변경하여 오류를 수정합니다 .


이것은 나를 위해 일했습니다. 나는하지 않았다 ANDROID_HOME설정 코르도바는 있었다 가정 /usr/lib/android-sdk잘못된하는이었다
hughjdavey가

/ Sdk 이전에 중지 한 것을 제외하고는 동일합니다. 그 줄 바꿈 그것으로 아무것도 잘못을 보인다
낮은

6

특히 오류 메시지를 감안할 때 관련이없는 것 같지만 최신 버전의 Android SDK 빌드 도구를 설치하여이 문제를 해결했습니다.


6

제 경우에는 환경 변수 ANDROID_HOME이 잘못된 (이전) 디렉토리를 가리 켰습니다. 나는 하나를 수정하기 위해 재할당했습니다. 나의 경우에는

ANDROID_HOME = F : \ Program Files (x86) \ Android \ android-sdk


1
감사합니다. 다른 곳에서 제안 된 Android 스튜디오를 가리 켰습니다.
jcubic

5

나에게 문제는 ANDROID_HOME이 오래된 Android SDK 경로를 가리키는 것입니다. Android Studio를 설치 한 후 MAC (El Capitan)에 맞게 ~ / .bash_profile을 업데이트해야했습니다.

export ANDROID_HOME = "/ Users / corneliusparkin / Library / Android / sdk"

~ / .bash_profile을 업데이트 한 후 터미널을 다시 시작하거나이 명령을 실행해야합니다.

소스 ~ / .bash_profile


5

WINDOW : 이러한 유형의 문제에 직면했습니다. 그러나 탐구 후 제 경우에는 해결되었습니다. 창 10을 사용하고 있습니다. 아래 몇 단계 만 따르십시오.

  1. Windows 용 Android SKD Manager를 다운로드합니다. 이 페이지 끝의 https://developer.android.com/studio . zip 파일입니다. 압축을 풀면 도구 디렉토리가 표시됩니다.

  2. C : \ 드라이브로 이동하여 'android-sdk'새 폴더를 만듭니다. 도구 폴더를 복사하고
    C : \ android-sdk 에서 과거

  3. 관리자 권한으로 명령 프롬프트를 엽니 다. cd "c : \ android-sdk \ tools \ bin"으로 이동합니다. sdkmanager가 여기에 표시됩니다. skdmanager를 입력하면 다음과 같이 표시됩니다. [======================================] 100 % 컴퓨팅 업데이트 ...

  4. 그 유형 "sdkmanager platform-tools"다음에 C : \ android-sdk에 platform-tools 디렉토리가 생성됩니다.

  5. 이제 시스템 환경 변수를 설정합니다. PC 선택 속성을 마우스 오른쪽 버튼으로 클릭합니다. 시스템 설정이 나타납니다. > 환경 변수를 클릭하십시오. 환경 변수가 팝업됩니다.

  6. 이 창에서 시스템 변수는 다음과 같습니다. C : \ android-sdk \ platform-tools 및 C : \ android-sdk \ tools \ bin

  7. 명령을 실행하여 도구 sdkmanager "build-tools; 27.0.3"빌드

    또한 Java 경로가 정의되어 있는지 확인하십시오. 문제가 해결되기를 바랍니다.


포인트 번호. 실수 "skdmanager를"맞춤법 검사를 한 3이되어야한다sdkmanager
산토


3

명령 줄에 android를 입력하고 "Android SDK Build-tools"를 설치합니다.


2
제 경우에는 당신이 옳았습니다. SDK Manager에서 Android SDK 빌드 도구를 설치하는 것을 잊었습니다. 감사!
tuchi35

2

이 문제를 며칠 동안 검색합니다 .... 도움이 되길 바랍니다.

최종 솔루션 : (Oracle-JDK 및 ANDROID를 설치했다고 가정합니다)

/ etc / environment 열기

 sudo nano /etc/environment


PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/shoniisra/Android/Sdk/tools:/home/shoniisra/Android/Sdk/platform-tools:/home/shoniisra/Android/Sdk/build-tools:/home/shoniisra/Android/Sdk:/home/shoniisra/android-studio/bin"
JAVA_HOME="/home/shoniisra/java/jdk1.8.0_231"
ANDROID_HOME="/home/shoniisra/Android/Sdk/build-tools/29.0.2"
ANDROID_SDK_ROOT="/home/shoniisra/Android/Sdk"
ANT_HOME="/home/shoniisra/ant/apache-ant-1.9.14"

저장 후 종료 (CTRL + o CTRL + X)

파일 다시로드 source /etc/environment

최근에 Android를 설치 한 경우 일부 라이선스에 동의해야합니다.

cd ~/Android/Sdk/tools/bin/

sdkmanager를 실행합니다.

./sdkmanager --licenses

그런 다음 모두 수락하고 마지막으로 APK를 생성하십시오.

cd {yourproyect}
sudo ionic cordova build android

1

제 경우에는 ANDROID_HOME이 ~/Library/Android/어떤 이유로 가리키는 것이 문제였습니다 . 올바른 경로는~/Library/Android/sdk


0

이것은 나를 위해 작동합니다! 새 Java 버전은 오류를 일으키기 때문에주의하십시오. 모든 것이 설치되어 있고 특정 디렉토리에 있는지 확인하십시오.

나는 openJDK를 사용하지 않았다

export JAVA_HOME="/usr/lib/jvm/java-8-jdk" \
&& export PATH=$JAVA_HOME/bin:$PATH \
&& export ANDROID_HOME=$HOME/Android/Sdk \
&& export PATH=${PATH}:${ANDROID_HOME}/tools \
&& export PATH=${PATH}:${ANDROID_HOME}/platform-tools \
&& export GRADLE_HOME=/usr/share/java/gradle/bin/gradle \
export PATH=$PATH:$GRADLE_HOME/bin

Linux 4.14.39-1-MANJARO # 1 SMP PREEMPT Wed May 2 19:03:39 UTC 2018 x86_64 GNU / Linux

내 셸에서 스크린 샷보기


0

내가 추가 한 <preference name="android-minSdkVersion" value="19" /> 나의로 conf.xml하고 빌드 성공했습니다.


0

이 질문에 대한 해결책은 여기 https://docops.ca.com/devtest-solutions/8-0-2/en/installing/setting-up-the-mobile-testing-environment/preinstallation-steps-for-mobile입니다. -테스트 /

이 단계를 따르고 문제를 해결하십시오.

Android SDK 패키지에는 컴파일 도구라는 구성 요소가 포함되어 있습니다. 모바일 테스트에는 버전 19.0.1, 19.1.0 또는 20.0.0 이상이 필요합니다.

이러한 버전이 ADT 패키지와 함께 설치되지 않은 경우 DevTest Workstation에서 모바일 자산을 만들 때 오류 메시지가 표시 될 수 있습니다.


0

맥 IOS

vi 또는 다른 쉘 편집기를 사용하여 ~ / .bash_profile 편집

vi ~/.bash_profile

다음 행을 추가하십시오.

export ANDROID_HOME=~/Library/Android/sdk
export PATH=${PATH}:~/Software/android-sdk-macosx/tools:~/Software/android-sdk-macosx/platform-tools"

(파일을 저장하고 종료) 업데이트 된 env 변수를 현재 쉘 환경에로드합니다.

. ~/.bash_profile
  • 어떤 이유로 빌드 도구의 이전 버전이있는 경우 Android 개발 스튜디오에서 업데이트 할 수 있습니다.
  • 구성-> SDK 관리자-> "Android SDK 빌드 도구
  • "패키지 세부 정보 표시"를 확인하십시오.
  • 이 패키지의 버전을 검토하고 필요한 경우 업데이트합니다.

0

글쎄 많은 사람들이 대답을하는데 어떤 대답은 같고 어떤 대답은 이드가 다릅니다. 나는 많은 답변을 시도했지만 저에게 효과가 없었습니다. 물론 위의 답변에서도 시도했지만 내 문제를 해결하지 못했습니다. 그리고 나는 이유를 모르지만이 답변으로 해결 된 내 문제조차도 동일한 오류가 있습니다. 누군가에게 도움이 될 수 있다고 쓰고 싶습니다.



0

다음 단계에 따라이 문제를 해결했습니다.

  1. cordova.gradle 파일 (platform / android / cordovaLib / cordova.gradle)로 이동합니다.
  2. getAndroidSdkDir () 메서드 검색
  3. 이제 System.getenv ( "ANDROID_HOME")을 실제 Android SDK 경로로 바꾸십시오.

0

Open Command Prompt SET ANDROID_HOME을 사용하여 ANDROID_HOME 경로를 확인합니다. 설정되지 않은 경우 아래 명령을 사용하여 설정합니다.

 SET ANDROID_HOME="C:\Users\VenkateshMogili\AppData\Local\Android\Sdk"

또는 시스템 환경 변수를 열고 다음과 같이 새 변수를 만듭니다.

 Variable Name: ANDROID_HOME
 Variable Value: C:\Users\VenkateshMogili\AppData\Local\Android\Sdk

cordova.gradle 파일 ( /platforms/android/CordovaLib/cordova.gradle )을 열고 getAndroidSdkDir () 메소드를 검색 하고 ANDROID_HOME 경로 ( "C : / Users / VenkateshMogili / AppData / Local / Android / Sdk" )를 대신 System.getenv ( "ANDROID_HOME")

라이센스 문제가 발생하면 C : \ Users \ VenkateshMogili \ AppData \ Local \ Android \ Sdk \ tools \ bin 에서 명령 프롬프트를 열어 아래 명령을 입력하십시오 .

  sdkmanager "build-tools;27.0.3"  //<-that will create build-tools folder and licenses folder.

그것은 나를 위해 작동합니다.


게시 된 로그 OP의 다섯 번째 줄에 이미 ANDROID_HOME(로 /opt/android-sdk) 설정되어 있지 않습니까?
LWChris

일단 홈 디렉토리를 확인하면 대부분 홈 / home / username / Android / sdk에있을 수 있습니다. 찾은 경우 설정해보십시오. .bashrc 파일 (홈 디렉토리에 있음) 끝에 아래 줄을 붙여 넣습니다. export ANDROID_HOME = $ HOME / Android / Sdk
VenkateshMogili

0

가상 머신을 사용하는 개발자를위한 경고

이 문제를 해결하기 위해 매우 오랜 시간을 보냈습니다. 이 게시물의 모든 것과 웹에서 더 많은 솔루션을 시도했습니다. 그러나 많은 실패와 웹상의 모든 사람들이 말하는 것을 겪은 후에도 여전히 VMWare Workstation의 Windows 10 이미지 인 VM에서 문제를 해결할 수 없었습니다.

모든 솔루션과 시스템 / 운영 체제에 대한 설명을 검토 한 후 사람들이 개발중인 설정의 눈에 띄는 차이점은 VM에서 개발 중이었습니다.

솔루션 : 모든 코드를 호스트 컴퓨터 (Windows 10 OS)로 가져 와서 모든 종속성을 다시 설치 한 후 모든 것이 먼저 해결되었는지 확인했습니다. 많은 연구 끝에 Android Studio에 일부 VM에 올바르게 설치하는 것과 관련하여 알려진 문제가 있다는 경고를 발견했습니다. 따라서 나와 같고 모든 솔루션을 시도했지만 (여러 번) 아무 효과가 없었지만 VM에있는 경우 호스트 (또는 다른 물리적 시스템)에 구축하는 것을 고려해야 할 수 있습니다.


0

이 문제는 다음 세부 사항으로 해결했습니다. 어쨌든 안드로이드 SDK는 설치된 모든 종속성과 필요한 파일을 관리하지만 `templates`템플릿> gradle> 래퍼가있는 이 파일을 잊어 버립니다 . 이 파일 세트가 없습니다.

스크린 샷

Mac의 경로 /Users/giogio/Library/Android/sdk/tools/templates


0

이 문제는 Cordova 설치를 업그레이드하는 경우에도 발생합니다.

로그 오류가 다음과 같은지 확인하십시오.

Checking Java JDK and Android SDK versions
ANDROID_SDK_ROOT=undefined (recommended setting) <-------------
ANDROID_HOME=/{path}/android-sdk-linux (DEPRECATED)
Using Android SDK: /usr/lib/android-sdk
Starting a Gradle Daemon (subsequent builds will be faster)

그런 경우에는 다음 ANDROID_HOME으로 변경 ANDROID_SDK_ROOT하십시오.~/.bashrc 또는 유사한 설정 파일.

이전에는 :

export ANDROID_HOME="/{path}/android-sdk-linux"

지금은 :

export ANDROID_SDK_ROOT="/{path}/android-sdk-linux"

출처를 잊지 마세요 : $ . ~/.bashrc에디션 이후.


-1

D : Android sdk \ Android SDK로 이동하여 SDK Manager를 클릭하고 빌드 도구가 설치되어 있지 않은지 확인한 다음 해당 도구를 설치하십시오.


-1
This is very irritating error and i wasted my almost 9 hours to solve this.

Steps to solve:

Notice **ANDROID_HOME** while you run **ionic cordova build android** . command i. for example in my case it was pointing to some other android sdk which i uninstalled and then it started pointing to right sdk.
**In my case i uninstalled :**

brew cask uninstall android-sdk
brew cask uninstall android-platform-tool


then i ran **ionic cordova build android**

> cordova build android
ANDROID_HOME=/Users/anand/Library/Android/sdk
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/Contents/Home


Then it might say lineces not accepted then run below command :

cd /Users/Android/sdk/tools/bin/
then run ./sdkmanager --licenses
accepts all with y option


Then it might say unable to download jars then go to platform android and build.gradle

and search for buildscript and inside that reverse the order 


repositories {
        jcenter()
        maven {
            url "https://maven.google.com"
        }
    }

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