构建离子应用程序时出错:无法执行aapt(CordovaLib:processDebugResources)

时间:2017-08-18 18:36:47

标签: android linux cordova gradle ionic-framework

我正在尝试使用Ionic框架来构建混合移动应用程序,但是几天后我就遇到了以下问题。

当我想构建应用程序(实际上是一个空白项目)时,命令“ ionic cordova build android ”在执行CordovaLib时返回此错误(下面的详细日志):processDebugResources任务:< / p>

/home/pi/android-sdk/build-tools/23.0.1/aapt: Syntax error: newline unexpected (expecting ")")

我尝试重新安装Android SDK多次。我也尝试了不同版本的Android工具/平台(23,26),但它没有做任何事情。

我没有在网上找到解决此问题的任何解决方案。 所以,如果某人有想法或已经遇到过这个问题并解决了它,请不要犹豫; - )

感谢您的帮助。

  • 构建应用时的详细日志:

    :CordovaLib:generateDebugBuildConfig UP-TO-DATE
    :CordovaLib:processDebugResources/home/pi/android-sdk/build-tools/23.0.1/aapt: 2:
    /home/pi/android-sdk/build-tools/23.0.1/aapt: Syntax error: newline unexpected (expecting ")")
    
      FAILED
    
    FAILURE: Build failed with an exception.
    
    * What went wrong:
    Execution failed for task ':CordovaLib:processDebugResources'.
    > com.android.ide.common.process.ProcessException: Failed to execute aapt
    
    * 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: 55.363 secs
    Error: /home/pi/IonicPJ/platforms/android/gradlew: Command failed with exit code 1 Error output:
    Picked up _JAVA_OPTIONS: -Xmx256M
    /home/pi/android-sdk/build-tools/23.0.1/aapt: 2: /home/pi/android-sdk/build-tools/23.0.1/aapt: Syntax error:
    newline unexpected (expecting ")")
    
    
    FAILURE: Build failed with an exception.
    
    * What went wrong:
    Execution failed for task ':CordovaLib:processDebugResources'.
    > com.android.ide.common.process.ProcessException: Failed to execute aapt
    
  • 您将在下面找到有关所安装组件的不同元素。

Ionic 3.8.1 Cordova 7.0.1 Gradle 4.1 JAVA 8

我设置变量$ JAVA_HOME,$ ANDROID_HOME 并将$ ANDROID_HOME / tools和$ ANDROID_HOME / platform-tools添加到$ PATH变量

这是我通过Android SDKManager安装的软件包:

    Installed packages:
  Path                        | Version | Description                    | Location
  -------                     | ------- | -------                        | -------
  build-tools;23.0.1          | 23.0.1  | Android SDK Build-Tools 23.0.1 | build-tools/23.0.1/
  emulator                    | 26.1.3  | Android Emulator               | emulator/
  extras;android;m2repository | 47.0.0  | Android Support Repository     | extras/android/m2repository/
  extras;google;m2repository  | 57      | Google Repository              | extras/google/m2repository/
  patcher;v4                  | 1       | SDK Patch Applier v4           | patcher/v4/
  platform-tools              | 26.0.0  | Android SDK Platform-Tools     | platform-tools/
  platforms;android-23        | 3       | Android SDK Platform 23        | platforms/android-23/
  platforms;android-25        | 3       | Android SDK Platform 25        | platforms/android-25/
  tools                       | 26.0.2  | Android SDK Tools              | tools/

当我运行“ ionic cordova platform ls ”时,我有:

Installed platforms: android 6.2.3

一切都在Raspbian Jessie的覆盆子上运行:

Linux raspberrypi 4.9.35-v7+ #1014 SMP Fri Jun 30 14:47:43 BST 2017 armv7l GNU/Linux

2 个答案:

答案 0 :(得分:0)

我也遇到了这个问题,当我在config.xml中添加allowClearTextTraffic以解决明文问题时,就会发生此问题。我用另一种方式解决了明文问题,然后运行

ionic cordova resources android

然后修复了构建问题!

答案 1 :(得分:0)

这些变量的设置存在一些配置问题。

ANDROID_HOME=/home/username/Android/Sdk
ANDROID_SDK_ROOT=/home/username/Android/Sdk
PATH=${PATH}:$ANDROID_HOME/emulator:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$ANDROID_HOME/build-tools/29.0.2/

您可以使用android studio而非离子CLI进行构建。