离子构建android失败 - 任务processDebugResources的执行失败

Sai*_*ish 23 android cordova phonegap-build ionic-framework

我正在使用Mac Yosemite.在为Android平台运行构建时遇到以下故障:

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':processDebugResources'.
> com.android.ide.common.internal.LoggedErrorException: Failed to run command:
    /Users/sairamk/Development/android-sdk-macosx/build-tools/22.0.1/aapt package -f --no-crunch -I /Users/sairamk/Development/android-sdk-macosx/platforms/android-22/android.jar -M /Users/sairamk/projects/dummy_app/platforms/android/build/intermediates/manifests/full/debug/AndroidManifest.xml -S /Users/sairamk/projects/dummy_app/platforms/android/build/intermediates/res/debug -A /Users/sairamk/projects/dummy_app/platforms/android/build/intermediates/assets/debug -m -J /Users/sairamk/projects/dummy_app/platforms/android/build/generated/source/r/debug -F /Users/sairamk/projects/dummy_app/platforms/android/build/intermediates/res/resources-debug.ap_ --debug-mode --custom-package com.ionicframework.bcgsandbox553389 -0 apk --output-text-symbols /Users/sairamk/projects/dummy_app/platforms/android/build/intermediates/symbols/debug
  Error Code:
    1
  Output:
    /Users/sairamk/projects/dummy_app/platforms/android/build/intermediates/res/debug/xml/config.xml:59: error: Error parsing XML: unbound prefix
Run Code Online (Sandbox Code Playgroud)

对于IOS,构建运行完全正常.我已经安装了android SDK并配置了ANDROID_HOME和ANDROID_SDK_ROOT系统变量.

还尝试删除平台并再次添加,以使用以下内容创建一个干净的平台文件夹:

ionic platform remove android
ionic platform add android
Run Code Online (Sandbox Code Playgroud)

但没有好处.

我安装的Android SDK构建工具版本--19.1,20,21.1.2和22.0.1

AndroidManifest.xml首选项:

 <uses-sdk android:minSdkVersion="16" android:targetSdkVersion="22" />
Run Code Online (Sandbox Code Playgroud)

Cap*_*der 34

要获得更多信息进行调试,请转到该./platforms/android/文件夹并运行:

Mac用户:

gradlew --info build clean
Run Code Online (Sandbox Code Playgroud)

Linux用户(感谢皮埃尔):

./gradlew --info build clean
Run Code Online (Sandbox Code Playgroud)

Windows用户:

gradlew.bat --info build clean
Run Code Online (Sandbox Code Playgroud)

这为您提供了更多细节.

我的问题以这种方式解决了,发现一些文件错误地放入项目文件夹中,文件名中有空格.

  • Linux:`./gradlew --info build clean`谢谢顺便说一下,你救了我的一天 (2认同)

Sai*_*ish 24

通过将phonegap(xmlns:gap ="http://phonegap.com/ns/1.0")的xml命名空间添加到config.xml来解决此问题

添加后:

<widget id="com.ionicframework.yourpackagename" 
version="0.0.1" 
xmlns="http://www.w3.org/ns/widgets" 
xmlns:cdv="http://cordova.apache.org/ns/1.0"
xmlns:gap="http://phonegap.com/ns/1.0">
Run Code Online (Sandbox Code Playgroud)

希望它可以帮助面临类似问题的人.