Android studio 下的SDK Manager只显示已安装包的情况
原因是连接不上Google的更新服务器: 解决方法: 选择第三个Options: 修改Http Proxy Server:mirrors.neusoft.edu.cn Http Proxy Port: 80 选中 Others 下面的 Force htto://....选项 重启SDK Manager即可
一大早来开发一个新的需求,拉取了一个新的分支,然后导入Android Studio之后,编译就报错了,报错如下所示:
错误具体日志如下所示:
Information:Gradle tasks [:app:assembleDebug]
Error:Failed to crunch file C:\Code\XTC_NetEaseCloudMusic\branches\APP_NetEaseCloudMusic_UseByAnonymous\NetEaseCloudeMusic\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\25.2.0\res\drawable-xhdpi-v4\abc_textfield_search_activated_mtrl_alpha.9.png into C:\Code\XTC_NetEaseCloudMusic\branches\APP_NetEaseCloudMusic_UseByAnonymous\NetEaseCloudeMusic\app\build\intermediates\res\merged\debug\drawable-xhdpi-v4\abc_textfield_search_activated_mtrl_alpha.9.png
Error:Execution failed for task ':app:mergeDebugResources'.
> Error: Failed to crunch file C:\Code\XTC_NetEaseCloudMusic\branches\APP_NetEaseCloudMusic_UseByAnonymous\NetEaseCloudeMusic\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\25.2.0\res\drawable-xhdpi-v4\abc_textfield_search_activated_mtrl_alpha.9.png into C:\Code\XTC_NetEaseCloudMusic\branches\APP_NetEaseCloudMusic_UseByAnonymous\NetEaseCloudeMusic\app\build\intermediates\res\merged\debug\drawable-xhdpi-v4\abc_textfield_search_activated_mtrl_alpha.9.png
Information:BUILD FAILED
Information:Total time: 2.682 secs
Information:2 errors
Information:0 warnings
Information:See complete output in console
Error: Failed to crunch file C:\Code\XTC_NetEaseCloudMusic\branches\APP_NetEaseCloudMusic_UseByAnonymous\NetEaseCloudeMusic\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\25.2.0\res\drawable-xhdpi-v4\abc_textfield_search_activated_mtrl_alpha.9.png into C:\Code\XTC_NetEaseCloudMusic\branches\APP_NetEaseCloudMusic_UseByAnonymous\NetEaseCloudeMusic\app\build\intermediates\res\merged\debug\drawable-xhdpi-v4\abc_textfield_search_activated_mtrl_alpha.9.png
:app:mergeDebugResources FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:mergeDebugResources'.
> Error: Failed to crunch file C:\Code\XTC_NetEaseCloudMusic\branches\APP_NetEaseCloudMusic_UseByAnonymous\NetEaseCloudeMusic\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\25.2.0\res\drawable-xhdpi-v4\abc_textfield_search_activated_mtrl_alpha.9.png into C:\Code\XTC_NetEaseCloudMusic\branches\APP_NetEaseCloudMusic_UseByAnonymous\NetEaseCloudeMusic\app\build\intermediates\res\merged\debug\drawable-xhdpi-v4\abc_textfield_search_activated_mtrl_alpha.9.png
* 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: 6.359 secs
Executing tasks: [:app:assembleDebug]
上面是错误信息、编译不成功的原因是超过了最长限制。
在根目录下的build.gradle添加如下
buildDir = "C:/tmp/${rootProject.name}/${project.name}"
该代码的意思是指定 Project构建结果存放目录
对比如下所示:
没有添加时候的代码,
allprojects {
repositories {
jcenter()
mavenLocal()
}
}
添加后的代码:
allprojects {
repositories {
jcenter()
mavenLocal()
}
buildDir = "C:/tmp/${rootProject.name}/${project.name}"
}
添加后编译成功,并且可以运行。
但是编译后的Android Studio画面确实如下所示:
如上图所示:app这个module貌似单独移出去了一样,感觉怪怪的。
并且在build目录下,并没有任何apk文件生成。
apk文件都生成到了之前配置的buildDir目录下去了。
buildDir = "C:/tmp/${rootProject.name}/${project.name}"
打开C盘 tem目录 ,可以看到生成的编译产物都在这里。
apk生成在 C:\tmp\NetEaseCloudeMusic\app\outputs\apk 目录下。
虽然方法1是有效的,但是还是感觉怪怪的,因此我决定使用方法2。
将工程挪到最外层文件夹。
重新从SVN服务器 checkout 一份该分支代码,到目录
C:\Code\APP_NetEaseCloudMusic_UseByAnonymous\NetEaseCloudeMusic
然后导入到Android Studio 编译,直接编译成功并且成功运行。
来对比一下,之前的目录是
C:\Code\XTC_NetEaseCloudMusic\branches\APP_NetEaseCloudMusic_UseByAnonymous\NetEaseCloudeMusic
目录太长了,导致编译失败
C:\Code\XTC_NetEaseCloudMusic\branches\APP_NetEaseCloudMusic_UseByAnonymous\NetEaseCloudeMusic\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\25.2.0\res\drawable-xhdpi-v4\abc_textfield_search_activated_mtrl_alpha.9.png
因为 abc_textfield_search_activated_mtrl_alpha.9.png 总共的路径名有241个字符,超过了windows规定的240个字符。有可能会提示:
Error: File path too long on windows, keep below 240 characters
下面是windows系统的文件目录限制
将文件路径缩短之后,编译成功,如下所示:
出现该bug的最终原因还是因为文件目录太长导致的,所以推荐使用方法2,将项目目录缩短然后再导入到Android Studio 重新编译,方法1总感觉会有隐藏bug。
参考文档:
作者:欧阳鹏 欢迎转载,与人分享是进步的源泉!
转载请保留原文地址:http://blog.csdn.net/ouyang_peng/article/details/72596381如果本文对您有所帮助,欢迎您扫码下图所示的支付宝和微信支付二维码对本文进行打赏。
微信关注我们
转载内容版权归作者及来源网站所有!
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。
Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。
Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。
Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。