Android编译时出现aapt.exe finished with non-zero exit value 1错误的解决方法

By Long Luo

昨天在开发一个项目时,在Android Studio中编译时,gradle编译之后出现了如下错误:

Error:Execution failed for task ':samples-simplevideowidget:processDebugResources'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'E:\Android\SDK\build-tools\23.0.1\aapt.exe'' finished with non-zero exit value 1

首先看到这个错误之后,我先检查了下Android Studio项目中资源,代码有无提示的错误,经过确认没有之后,将错误信息在Google中搜索。

经过搜索之后,在StackOverflow和CSDN上发现有很多人遇到了这个错误,不过解决方法却各不相同。有的建议Clean然后Rebuild,有的建议修改使用内存,有的说是代码问题,也有的说是资源问题,比如本来是jpg图片,文件后缀却是png也会导致问题…

我按照以上方案一一检查,还是未能解决,于是只能自己动手排查原因了!

1. 定位错误点

在项目root路径,命令行输入:

gradlew processDebugResources --debug

然后项目开始编译,屏幕上输出大量编译Log信息,从Log中找到了输出的出错信息:

org.gradle.process.internal.DefaultExecHandle] Changing state to: FAILED
org.gradle.process.internal.DefaultExecHandle] Process 'command 'E:\Android\SDK\build-tools\23.0.1\aapt.exe'' finished with exit value 1 (state: FAILED)
org.gradle.api.Project] Unknown source file : ERROR: In <declare-styleable> ListItemLinearLayout, unable to find attribute singleLine

org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter] Finished executing task ':samples-simplevideowidget:processDebugResources'
E] [class org.gradle.TaskExecutionLogger] :samples-simplevideowidget:processDebugResources FAILED

从上述Log信息,我们可知出错点是ERROR: In <declare-styleable> ListItemLinearLayout, unable to find attribute singleLine,那么肯定是attrs文件的ListItemLinearLayoutstyleable出错了。

2. 错误原因

经过上述分析,我们进入attrs.xml文件,找到ListItemLinearLayout,如下所示:

    <declare-styleable name="ListItemLinearLayout">
    <attr name="singleLine" />
    <attr name="titleSize" format="dimension" />

可以看出singleLine没有对应的format属性,确定singleLine没有在代码中使用之后,将此属性删掉。

重新编译之后,问题解决。

Completed by Long Luo at 2016-04-09 00:36 @Shenzhen, China.

  • 9
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
引用\[1\]和\[2\]中的错误信息表明,在编译过程中出现了一个非零的退出值1。这通常表示编译过程中发生了错误。引用\[3\]中的编译日志提供了更多的细节,其中包括一些错误信息。根据这些信息,可能的原因和解决方法如下: 1. 缺少属性或资源:错误信息中提到了找不到属性singleLine。这可能是因为在布局文件或资源文件中引用了一个不存在的属性。请检查相关的布局文件和资源文件,确保所有引用的属性都存在。 2. Gradle版本不兼容:错误信息中提到了Gradle的执行失败。这可能是由于Gradle版本与项目不兼容导致的。尝试更新Gradle版本或与项目所需的Gradle版本匹配。 3. 依赖冲突:错误信息中可能还包含其他依赖冲突的信息。这可能是由于项目中使用的库或依赖项版本不兼容导致的。尝试更新相关的库或依赖项版本,以解决冲突。 4. 编译工具问题:错误信息中提到了编译工具aapt.exe的问题。这可能是由于编译工具本身的错误或损坏导致的。尝试重新安装或更新编译工具,以解决问题。 请根据具体的错误信息和项目环境,逐一排查可能的原因,并尝试相应的解决方法。如果问题仍然存在,请提供更多的错误信息和项目细节,以便更好地帮助您解决问题。 #### 引用[.reference_title] - *1* [Process ‘command ‘E:/java16/bin/java.exe‘‘ finished with non-zero exit value 1 错误解决](https://blog.csdn.net/u014657752/article/details/122864811)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [Android编译出现Process ‘command ‘build-tools\27.0.3\aapt.exe‘‘ finished with non-zero exit ...](https://blog.csdn.net/qq_36961698/article/details/120440647)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值