当在windows 下使用Andorid Stduio 进行有9.png等相关编译的时候,有时候会报错:
Error:Some file crunching failed, see logs for details
Error:Execution failed for task ':app:mergeDebugResources'.
> Error: Some file crunching failed, see logs for details
AAPT err(Facade for 596378712): \\?\C:\Users\**\.android\build-cache\2fe51ff37440fab8f5f875609a799aebf31c9e02\output\res\drawable-xxxhdpi-v4\abc_ic_menu_share_mtrl_alpha.png ERROR: Unable to open PNG file
AAPT err(Facade for 596378712): \\?\C:\Users\**\.android\build-cache\2fe51ff37440fab8f5f875609a799aebf31c9e02\output\res\drawable-xxxhdpi-v4\abc_tab_indicator_mtrl_alpha.9.png ERROR: Unable to open PNG file
AAPT err(Facade for 596378712): \\?\C:\Users\**\.android\build-cache\2fe51ff37440fab8f5f875609a799aebf31c9e02\output\res\drawable-hdpi-v4\abc_btn_radio_to_on_mtrl_015.png ERROR: Unable to open PNG file
以上的**代表当前用户,可能是非asc的字符.
这个错误比较诡异,因为在同事的机器上是没有问题的,之后进行了以下失败的尝试:
- 升级Android Studio到最新版本;
- 升级Gradle编译插件(这个因为使用的开源库没有支持3.0以上插件,经历多重痛苦后又返回);
- 重启,各种重启;
- 在bulid.gradle中添加如下编译选项:
aaptOptions {
cruncherEnabled = false
useNewCruncher = false
}
以上都不行后,重新搜索,翻了好几页,在Stack Overflow 里面找到了以下的连接:
Error:Some file crunching failed, see logs for details afer update gradle
根据这里的回答,改变了编译缓存的位置:
//请酌情修改为您的路径
android.buildCacheDir=D\:/android-studio/build-cache
之后编译通过了,修改此选项,回想原因,应该是gradle插件不支持非asc字符的png路径….
记录一下,希望可以对其他人有帮助.