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
답변
.NET을 사용 하여 platform-tools 및 buid-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
답변
이 세 가지 명령을 실행하면 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
영구적으로 추가하려면
이 단계를 따르세요:
- 텍스트 편집기에서 홈 디렉토리 (예 : /Users/your-user-name/.bash_profile)의 .bash_profile 파일을 엽니 다.
export PATH="The above exports here"
파일의 마지막 줄에 추가 합니다. 여기서 your-dir은 추가하려는 디렉토리입니다.- .bash_profile 파일을 저장하십시오.
- 터미널을 다시 시작하십시오.
답변
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
답변
오류가 말했듯이 ‘아니오 빌드 도구가 발견 설치’
는 것을 의미한다
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 키를 누릅니다.
답변
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
답변
ANDROID_HOME 을
잘못된 이전 디렉토리에서 C : \ Users \ Gebru \ AppData \ Local \ Android \ Sdk 로 변경하여 오류를 수정합니다 .
답변
특히 오류 메시지를 감안할 때 관련이없는 것 같지만 최신 버전의 Android SDK 빌드 도구를 설치하여이 문제를 해결했습니다.