当我在离子项目的根目录中运行 ionic build android 命令时,我收到此错误:
FAILURE:构建因异常而失败 . 其中:Script'/home/javad/Desktop/javadApp/platforms/android/CordovaLib/cordova.gradle'line: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我有:
export PATH = $ PATH:/ opt / android-sdk / tools export PATH = $ PATH:/ opt / android-sdk / platform-tools export PATH = $ PATH:/ opt / node / bin export 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 /工具中:/ opt / Android的SDK /平台工具中:/ opt /节点/箱
Important issue:
in file: /home/javad/Desktop/javadApp/platforms/android/CordovaLib/cordova.gradle | line 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
17 回答
2018
尝试
正如#Fadhil所说,这项工作对我而言
我将
<preference name="android-minSdkVersion" value="19" />
添加到我的conf.xml
中,构建成功了 .对我来说,问题是ANDROID_HOME指向一个旧的Android SDK路径 . 安装Android Studio后,我不得不相应更新〜/ .bash_profile for MAC(El Capitan)
export ANDROID_HOME =“/ Users / corneliusparkin / Library / Android / sdk”
记得在更新〜/ .bash_profile后重新启动终端或运行此命令
source~ / .bash_profile
在命令行上键入android并安装“Android SDK Build-tools”
我知道这看起来并不相关,特别是在给出错误消息的情况下,但我通过安装更新版本的Android SDK Build工具来解决这个问题 .
在我的例子中,Enviroument变量ANDROID_HOME被指向错误的(旧)目录 . 我重新分配以纠正一个 . 在我的情况下
ANDROID_HOME = F:\ Program Files(x86)\ Android \ android-sdk
对我来说,运行这三个命令解决了我在Mac上的问题:
你缺少android SDK工具 . 请尝试以下方法:
<package no.>
是1,2,3,n
和以下命令可以快速更新Ubuntu上的Android SDK并修复上述错误:
我通过使用
sdkmanager
下载名为 platform-tools 和 buid-tools 的sdk软件包来解决此问题 . 您可以使用 sdkmanager.exe 或如果您使用的是SDK CLI,请转到~\AppData\Local\Android\sdk\tools\bin
并运行以下命令:要么
或两者
之后,您应该能够运行
ionic cordova run android
或ionic build android
.注意:通过向环境变量添加
~\AppData\Local\Android\sdk\tools
和~\AppData\Local\Android\sdk\tools\bin
来全局化sdkmanager
命令 .因为错误说 'No installed build tools found' 意味着
1:它真的真的没有找到构建工具
2:要让他找到构建工具,您需要正确定义这些路径
PATH IS SAME FOR UBUNTU(.bashrc) AND MAC(.bash_profile)
3: IMPORTANT IMPORTANT 一旦设置了环境变量,就需要重新加载环境变量 .
4: Then check in terminal
注意:如果你没有在printenv中找到你的更改,那么重新启动电脑并再试一次printenv PATH,printenv ANDROID_HOME . 还有命令重新加载环境变量 .
4 : then open terminal and write HALF TEXT '$and' and hit tab. On hitting tab you should see full '$android' name.this verifys all paths are correct
5:在终端写$ android并点击回车
我通过将错误的先前目录中的 ANDROID_HOME 更改为 C:\Users\Gebru\AppData\Local\Android\Sdk 来修复错误 .
这个问题的解决方案在这里https://docops.ca.com/devtest-solutions/8-0-2/en/installing/setting-up-the-mobile-testing-environment/preinstallation-steps-for-mobile-testing/
请按照以下步骤操作,并解决您的问题 .
Android SDK包中包含一个名为compile tools的组件 . 移动测试至少需要19.0.1,19.1.0或20.0.0版本 .
如果这些版本未随ADT软件包一起安装,则在DevTest Workstation中创建移动资产时可能会收到错误消息:
转到D:Android sdk \ Android SDK并单击SDK Manager并检查是否安装了Build Tools(如果未安装)然后安装这些工具
这个问题我解决了以下细节,不知何故android SDK管理安装了所有的依赖项和必要的文件,但忘记了这个
templates
文件,其中找到了templates> gradle> wrapper . 缺少这组文件 . enter image description here . mac / Users / giogio / Library / Android / sdk / tools / templates中的路径这适合我!小心新的java版本,因为它们会导致错误,请检查是否已安装所有内容并在特定目录中,
Linux 4.14.39-1-MANJARO#1 SMP PREEMPT Wed May 2 19:03:39 UTC 2018 x86_64 GNU / Linux