一大早來開發一個新的需求,拉取了一個新的分支,而後導入Android Studio以後,編譯就報錯了,報錯以下所示:
css
錯誤具體日誌以下所示:android
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]
上面是錯誤信息、編譯不成功的緣由是超過了最長限制。windows
在根目錄下的build.gradle添加以下bash
buildDir = "C:/tmp/${rootProject.name}/${project.name}"
該代碼的意思是指定 Project構建結果存放目錄 服務器
對好比下所示:
沒有添加時候的代碼,微信
allprojects {
repositories {
jcenter()
mavenLocal()
}
}
添加後的代碼:markdown
allprojects {
repositories {
jcenter()
mavenLocal()
}
buildDir = "C:/tmp/${rootProject.name}/${project.name}"
}
添加後編譯成功,而且能夠運行。
app
可是編譯後的Android Studio畫面確實以下所示:maven
如上圖所示: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若是本文對您有所幫助,歡迎您掃碼下圖所示的支付寶和微信支付二維碼對本文進行打賞。