jav*_*d75 79 ubuntu android cordova ionic-framework ionic
当我在离子项目的根目录中运行ionic build android命令时,我收到此错误:
FAILURE:构建因异常而失败.
其中:脚本'/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)
Run Code Online (Sandbox Code Playgroud)
在〜/ .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 /游戏:在/ usr /本地/游戏中:/ opt/Android的SDK /工具中:/ opt/Android的SDK /平台工具中:/ opt /节点/箱
重要问题:
在文件中: /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) }
}
Run Code Online (Sandbox Code Playgroud)
刚刚返回/ opt/android-sdk/build-tools !!!
在/ opt/android-sdk/build-tools文件夹中我有:
从以下网址中提取的android-5.1文件夹:https: //dl.google.com/android/repository/build-tools_r22-linux.zip
Fad*_*hil 42
我通过下载SDK包称为修复这个平台,工具和打造专业化的工具使用sdkmanager.您可以使用sdkmanager.exe,或者如果您使用的是SDK CLI,请转到~\AppData\Local\Android\sdk\tools\bin并运行以下命令:
sdkmanager "platform-tools" "platforms;android-26"
Run Code Online (Sandbox Code Playgroud)
要么
sdkmanager "build-tools;27.0.3"
Run Code Online (Sandbox Code Playgroud)
或两者
之后你应该能够跑ionic cordova run android或ionic build android.
注意:globalize sdkmanager命令通过添加~\AppData\Local\Android\sdk\tools和~\AppData\Local\Android\sdk\tools\bin环境变量.
Bla*_*mba 29
对我来说运行这三个命令可以解决我在Mac上的问题:
export ANDROID_HOME=~/Library/Android/sdk
export PATH=${PATH}:${ANDROID_HOME}/tools
export PATH=${PATH}:${ANDROID_HOME}/platform-tools
Run Code Online (Sandbox Code Playgroud)
为了便于复制,这里是单行
export ANDROID_HOME=~/Library/Android/sdk && export PATH=${PATH}:${ANDROID_HOME}/tools && export PATH=${PATH}:${ANDROID_HOME}/platform-tools
Run Code Online (Sandbox Code Playgroud)
Ale*_*ley 28
你缺少android SDK工具.请尝试以下方法:
android list sdk --all
android update sdk -u -a -t <package no.>
Run Code Online (Sandbox Code Playgroud)
哪里<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
Run Code Online (Sandbox Code Playgroud)
vij*_*jay 19
因为错误显示"没有找到已安装的构建工具", 这意味着
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
Run Code Online (Sandbox Code Playgroud)
3:重要重要一旦设置了环境变量,就需要重新加载环境变量.
//For ubuntu
$source .bashrc
//For macos
$source .bash_profile
Run Code Online (Sandbox Code Playgroud)
4:然后检查终端
$printenv ANDROID_HOME
$printenv PATH
Run Code Online (Sandbox Code Playgroud)
注意:如果你没有在printenv中找到你的更改,那么重新启动电脑并再试一次printenv PATH,printenv ANDROID_HOME.还有命令重新加载环境变量.
4:然后打开终端并写入HALF TEXT'$和'并点击标签.在点击标签上你应该看到完整的'$ android'名称.这证明所有路径都是正确的
5:在终端写$ android并点击回车
小智 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
Run Code Online (Sandbox Code Playgroud)
在我的情况下,环境变量ANDROID_HOME指向错误的(旧)目录。我重新分配来更正一个。就我而言
ANDROID_HOME = F:\ Program Files(x86)\ Android \ android-sdk
小智 6
2018年
The "android" command is deprecated.
Run Code Online (Sandbox Code Playgroud)
尝试
sdkmanager "build-tools;27.0.3"
Run Code Online (Sandbox Code Playgroud)
正如#Fadhil 所说,这对我有用
对我来说,问题是 ANDROID_HOME 指向旧的 Android SDK 路径。安装 Android Studio 后,我必须相应地为 MAC (El Capitan) 更新 ~/.bash_profile
export ANDROID_HOME="/Users/corneliusparkin/Library/Android/sdk"
记得更新 ~/.bash_profile 后重新启动终端或运行此命令
源 ~/.bash_profile
小智 5
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 中创建 platform-tools 目录
现在设置系统环境变量:右键单击 PC 选择属性。将弹出系统设置。单击 > 环境变量。将弹出环境变量。
在这个窗口系统变量就像这样。C:\android-sdk\platform-tools 和 C:\android-sdk\tools\bin
运行命令来构建工具 sdkmanager "build-tools;27.0.3"
还要确保定义了 java 路径。我希望它能解决问题。
小智 5
我搜索这个问题好几天了......我希望它会有用
最终解决方案:(我假设您已经安装了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"
Run Code Online (Sandbox Code Playgroud)
保存并退出(CTRL+o CTRL+X)
重新加载文件source /etc/environment
如果您最近安装了 Android,则应该接受一些许可证
cd ~/Android/Sdk/tools/bin/
Run Code Online (Sandbox Code Playgroud)
执行sdkmanager:
./sdkmanager --licenses
Run Code Online (Sandbox Code Playgroud)
然后全部接受,最后生成你的APK
cd {yourproyect}
sudo ionic cordova build android
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
109084 次 |
| 最近记录: |