![](/img/trans.png)
[英]Ionic build time error "No installed build tools found. Install the Android build tools version 30.0.3 or higher"
[英]ionic build Android | error: No installed build tools found. Please install the Android build tools
当我在 ionic 项目的根目录中运行ionic build android命令时,出现此错误:
失败:构建失败,出现异常。
其中:脚本 '/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
导出 PATH=$PATH:/opt/android-sdk/platform-tools
导出 PATH=$PATH:/opt/node/bin
导出 JAVA_HOME=/usr/lib/jvm/default-java
导出 ANDROID_HOME=/opt/android-sdk
$路径是:
/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 !!!
在/opt/android-sdk/build-tools文件夹中我有:
从中提取的android-5.1文件夹: https ://dl.google.com/android/repository/build-tools_r22-linux.zip
我通过下载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
。
注意:通过将~\\AppData\\Local\\Android\\sdk\\tools
和~\\AppData\\Local\\Android\\sdk\\tools\\bin
到环境变量来全球化sdkmanager
命令。
对我来说,运行这三个命令可以解决 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
永久添加
按着这些次序:
export PATH="The above exports here"
,其中your-dir 是你要添加的目录。您缺少 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 :重要 重要一旦你设置了环境变量,你就需要重新加载环境变量。
//For ubuntu
$source .bashrc
//For macos
$source .bash_profile
4:然后在终端检查
$printenv ANDROID_HOME
$printenv PATH
注意:如果你没有在printenv中找到你的更改,那么重启电脑并再次尝试printenv PATH, printenv ANDROID_HOME 。还有重新加载环境变量的命令。
4 : 然后打开终端并写入 HALF TEXT '$and' 并点击 Tab。 在点击选项卡上,您应该看到完整的“$android”名称。这验证了所有路径是否正确
5 : 在终端输入 $android 并回车
请安装 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 Build 工具解决了这个问题。
就我而言,环境变量 ANDROID_HOME 指向错误(旧)目录。 我重新分配以纠正一个。 就我而言
ANDROID_HOME=F:\\Program Files (x86)\\Android\\android-sdk
2018年
The "android" command is deprecated.
尝试
sdkmanager "build-tools;27.0.3"
正如#Fadhil 所说,这对我有用
对我来说,问题是 ANDROID_HOME 指向旧的 Android SDK 路径。 安装 Android Studio 后,我必须相应地为 MAC (El Capitan) 更新 ~/.bash_profile
export ANDROID_HOME="/Users/corneliusparkin/Library/Android/sdk"
记得更新 ~/.bash_profile 后重新启动终端或运行此命令
源 ~/.bash_profile
FOR WINDOW:我遇到过这种类型的问题。 但在我的情况下,它在探索之后解决了。 我正在使用窗口 10。只需按照以下几个步骤操作:
下载适用于 Windows 的 Android SKD 管理器。 https://developer.android.com/studio在本页末尾。 它是 zip 文件。 解压后会显示工具目录。
转到驱动器 C:\\ 创建新文件夹“android-sdk”。 复制工具文件夹并粘贴进去
C:\\android-sdk
以管理员身份打开命令提示符。 转到 cd " c:\\android-sdk\\tools\\bin "。 sdkmanager 将显示在这里。 输入skdmanager,它会显示如下 [========================================] 100 % 计算更新...
在键入“sdkmanager platform-tools”之后,它将在 C:\\android-sdk 中创建平台工具目录
现在设置系统环境变量:右键单击 PC 选择属性。 将弹出系统设置。 单击 > 环境变量。 将弹出环境变量。
在这个窗口系统变量就像这样。 C:\\android-sdk\\platform-tools 和 C:\\android-sdk\\tools\\bin
运行命令来构建工具 sdkmanager "build-tools;27.0.3"
还要确保定义了 java 路径。 我希望它能解决问题。
在命令行中输入 android 并安装“Android SDK Build-tools”
我在这个问题上搜索了好几天......我希望它会有用
最终解决方案:(我假设您已经安装了 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
就我而言,问题是 ANDROID_HOME 由于某种原因指向~/Library/Android/
。 正确的路径是~/Library/Android/sdk
这对我有用! 小心新的 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 5 月 2 日星期三 19:03:39 UTC 2018 x86_64 GNU/Linux
我将<preference name="android-minSdkVersion" value="19" />
到我的conf.xml
并且构建成功。
请按照以下步骤操作,解决您的问题。
Android SDK 包中包含一个称为编译工具的组件。 移动测试至少需要 19.0.1、19.1.0 或 20.0.0 版本。
如果这些版本没有与您的 ADT 包一起安装,您可能会在 DevTest Workstation 中创建移动资产时收到一条错误消息:
苹果操作系统
使用 vi 或其他 shell 编辑器编辑 ~/.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"
(保存文件,然后退出)将这些更新的环境变量加载到当前的 shell 环境中:
. ~/.bash_profile
嗯,很多人给出了他们的答案,有些答案是一样的,有些答案是不同的。 我尝试了很多答案,但它们对我不起作用,当然我也尝试了上面的答案,但没有解决我的问题。 我不知道为什么,但即使我的问题已通过此ANSWER解决,我也有同样的错误。 我只是想写它可能对某人有帮助。
我已经尝试了上述所有解决方案。 没有工作。 直到我被链接到https://forum.ionicframework.com/t/ionic-v4-no-installed-build-tools-found/152150。
显然,您必须以 root 身份运行该命令。 须藤是不够的。 您需要先更改为 root 用户,然后才能运行所有命令。
我已经通过以下步骤解决了这个问题:
Olá,要在Windows 10上使用电子邮件,要在Windows 10上进行虚拟化,要在Windows 10上进行虚拟安装,请不要在程序上添加任何内容。 利用o: Hyper-V
打开命令提示符使用 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.
这个对我有用。
我花了很长时间试图解决这个问题。 我尝试了这篇文章中的所有内容以及网络上的更多解决方案。 然而,在经历了多次失败并经历了网络上每个人都在说的事情之后,我仍然无法解决我的 VM 上的问题 - 这是 VMWare Workstation 上的 Windows 10 映像。
在查看了人们正在开发的机器/操作系统的所有解决方案和描述后,我的设置中的明显差异是我在 VM 中进行开发。
解决方案:我将所有代码都拉到主机(Windows 10 操作系统)上,重新安装了所有依赖项,并确保首先解决所有问题。 经过大量研究,我发现了一些警告,即 Android Studio 在某些 VM 中正确安装方面存在一些已知问题。 因此,如果您像我一样尝试了所有解决方案(多次)但没有任何效果,但您使用的是虚拟机,则可能需要考虑在主机(或其他物理机)上构建
如果对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)
在这种情况下,只需将~/.bashrc
或类似配置文件中的ANDROID_SDK_ROOT
更改为ANDROID_HOME
即可。
以前在哪里:
export ANDROID_HOME="/{path}/android-sdk-linux"
现在是:
export ANDROID_SDK_ROOT="/{path}/android-sdk-linux"
不要忘记来源: $ . ~/.bashrc
$ . ~/.bashrc
版本后。
检查您是否已将 android SDK 路径添加到环境文件 (.bash_profile) 中。 如果您使用默认路径安装了 android studio,请将以下几行添加到您的环境文件中。 就我而言,我使用的是 bash,所以我更新了 .bash_profile
export ANDROID_HOME=~/Library/Android/sdk
export ANDROID_SDK_ROOT=~/Library/Android/sdk
export ANDROID_AVD_HOME=~/.android/avd
我浪费了一天来解决这个问题,最后我得到了解决方案 - 首先我删除了 ionic cordova platform android -Install ionic cordova platform android@8
就是这样
i) 编辑您的 .zshrc 文件
export LANG=en_US.UTF-8
export ANDROID_HOME=/Users/bookwarm/Library/Android/sdk
export ANDROID_SDK_ROOT=~/Library/Android/sdk
export ANDROID_AVD_HOME=~/.android/avd
export PATH=$PATH:/Users/{your name}/Library/Android/sdk/tools
export PATH=$PATH:/Users/{your name}/Library/Android/sdk/tools/sdkmanager
export PATH=$PATH:/Users/{your name}/Library/Android/sdk/platform-tools
export PATH=$PATH:/Users/{your name}/Library/Android/sdk/build-tools
export PATH=$PATH:/Users/{your name}/Library/Android/sdk/tools/bin
export ANDROID_NDK=/Users/{your name}/Library/Android/sdk/ndk-bundle
export JAVA_HOME=$(/usr/libexec/java_home)
ii) 编辑您的 .bash_profile 文件
export ANDROID_HOME=/Users/{your name}/Library/Android/sdk
export ANDROID_SDK_ROOT=~/Library/Android/sdk
export ANDROID_AVD_HOME=~/.android/avd
export PATH=$PATH:/Users/{your name}/Library/Android/sdk/tools
export PATH=$PATH:/Users/{your name}/Library/Android/sdk/tools/sdkmanager
export PATH=$PATH:/Users/{your name}/Library/Android/sdk/platform-tools
export PATH=$PATH:/Users/{your name}/Library/Android/sdk/build-tools
export PATH=$PATH:/Users/{your name}/Library/Android/sdk/tools/bin
export ANDROID_NDK=/Users/{your name}/Library/Android/sdk/ndk-bundle
export JAVA_HOME=$(/usr/libexec/java_home)
在 build.gradle 脚本中,它检查 build-tools 版本是否低于 Gradle 配置中的 maxVersion。 所以就我而言,我设置了环境 SDK 变量,但我的版本高于允许的版本。
def highestBuildToolsVersion = buildToolsDirContents
.collect { new Version(it) }
// Invalid inputs will be handled as 0.0.0
.findAll { it.isHigherThan('0.0.0') && it.isLowerThan(maxVersion) }
.max()
在windows 上,我检查了 sdkmanager 的路径并在终端中切换到:
cd C:\Android\android-sdk\tools\bin
比我运行以下命令:
sdkmanager "platform-tools" "platforms;android-33"
sdkmanager "build-tools;33.0.0"
在此之前,我检查了 Android Studio 是否已安装工具以及路径是否正确,因此版本可能与我的不同。 构建工具和平台工具位于:
C:\Users\[yourUsername]\AppData\Local\Android\Sdk
所以你可以在那里检查你的版本。
我有同样的问题。 我尝试了此页面上的所有解决方案,但对我有用的是安装请求的构建工具的确切版本。 就我而言,我安装了更高版本 (33.0.0),但为了使其正常工作,我必须下载旧版本 30.0.3。
转到 D:Android sdk\\Android SDK 并单击 SDK Manager 并检查是否安装了 Build Tools 如果未安装则安装这些工具
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
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.