我知道有很多类似的问题,但我找不到任何解决方案.此外,我会提供具体案例的详细信息.
我在Ubuntu 16.04 LTS编写了一个Ionic项目,现在我必须构建它才能发布.所以我运行命令:
cordova build --release android
Run Code Online (Sandbox Code Playgroud)
我显示以下错误:
Error: Could not find gradle wrapper within Android SDK. Might need to update your Android SDK.
Looked here: /home/user/Android/Sdk/tools/templates/gradle/wrapper
Run Code Online (Sandbox Code Playgroud)
templates/gradle/wrapper目录.经过广泛的研究,我将所有与Android Studio相关的环境变量放在文件中/etc/environment.所以现在它看起来像这样:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/game:/home/<user>/Android/Sdk:/home/<user>/Android/Sdk/tools:/home/<user>/Android/Sdk/platform-tools"
ANDROID_HOME=/home/<user>/Android/Sdk
export ANDROID_HOME
JAVA_HOME=/usr/lib/jvm/java-8-oracle
export JAVA_HOME
GRADLE_HOME=/opt/android-studio/gradle/gradle-3.2
export GRADLE_HOME
Run Code Online (Sandbox Code Playgroud)
现在,为了测试环境变量,我运行以下命令:
source /etc/environment
echo $PATH
echo $ANDROID_HOME
echo $JAVA_HOME
echo $GRADLE_HOME
Run Code Online (Sandbox Code Playgroud)
并且正确显示所有路径变量.
所以,看起来环境变量就像他们应该根据各种类似的问题和我搜索过的教程.有谁知道我做错了什么?为什么我仍然会收到Gradle Wrapper错误?
我试图让这个工作,这让我疯了:
$ cordova platform add android
Run Code Online (Sandbox Code Playgroud)
输出是:
Creating android project...
/Users/doekewartena/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:126
throw e;
^
Error: Please install Android target 19 (the Android newest SDK). Make sure you have the latest Android tools installed as well. Run "android" from your command-line to install/update any missing SDKs or tools.
at /Users/doekewartena/.cordova/lib/android/cordova/3.5.0/bin/lib/check_reqs.js:80:29
at _fulfilled (/Users/doekewartena/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:798:54)
at self.promiseDispatch.done (/Users/doekewartena/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:827:30)
at Promise.promise.promiseDispatch (/Users/doekewartena/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:760:13)
at /Users/doekewartena/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:574:44
at flush (/Users/doekewartena/.cordova/lib/android/cordova/3.5.0/bin/node_modules/q/q.js:108:17)
at process._tickCallback (node.js:419:13)
Error: /Users/doekewartena/.cordova/lib/android/cordova/3.5.0/bin/create: Command failed with exit code 8
at ChildProcess.whenDone (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/superspawn.js:135:23)
at ChildProcess.emit (events.js:98:17) …Run Code Online (Sandbox Code Playgroud) 我有问题用Cordova构建android,当我执行时cordova build android,我收到此错误:
Error: Android SDK not found. Make sure that it is installed. If it is not at the default location, set the ANDROID_HOME environment variable.
Run Code Online (Sandbox Code Playgroud)
我这样做是为了解决它:
sudo nano ~/.bash_profile
Run Code Online (Sandbox Code Playgroud)
并添加此行:
export PATH=${PATH}:/Users/myname/Library/Android/sdk/platform-tools:/Users/myname/Library/Android/sdk/tools
Run Code Online (Sandbox Code Playgroud)
这个:
source ~/.bash_profile
Run Code Online (Sandbox Code Playgroud)
但是我在构建时再次出现错误,我该如何解决?
更新:
这是我在bash中添加的行:
export PATH=${PATH}:/Users/myname/Library/Android/sdk/platform-tools:/Users/myname/Library/Android/sdk/tools
export ANDROID_HOME=/Users/myname/Library/Android/sdk
Run Code Online (Sandbox Code Playgroud) 是的,我搜索了这个但没什么,只是关于ANDROID_HOME路径的事情,但在我的情况下,我不认为这是真正的问题.当我尝试这样做时,ionic build android我得到这个错误:
错误:无法在android sdk中找到gradle包装器.可能需要更新您的Android SDK.看这里:C:\ Android\sdk\tools\templates\gradle\wrapper
,发现C:\Android\sdk\tools我没有"模板"文件夹,只是这样的:
我只在这条路上看到gradle包装器 C:\Android\sdk\temp\ToolPackage.old01\templates\gradle\wrapper
为什么我的sdk文件夹中没有Gradle?我错过了什么?在SDK管理器中我安装了这个:
提前致谢
我正在尝试构建一个基于android cordova的应用程序,但我总是得到这个错误.
这里cli上的错误消息: cli-error
但是,正如你在下一张图片中看到的那样,我已经安装了android-23平台和android sdk管理器: Android SDK管理器
此外,环境变量ANDROID_HOME已正确设置,我的PATH中有android-sdk\tools和android-sdk\platform-tools.
有没有人知道可能是什么问题?