當前位置:編程學習大全網 - 編程語言 - androidstudio編譯中"png-cr.不管是什麽編程語言,在程序開發的

androidstudio編譯中"png-cr.不管是什麽編程語言,在程序開發的

不管是什麽編程語言,在程序開發的過程中遇到各種各樣的報錯是難免的,為大家分享的是壹位大神在安卓開發中使用Android Studio開發工具編譯mergeDebugResources時出現的“png-cruncher_*”異常,然後著手成功解決的方法,壹起來看看吧:

我們先來看看報錯代碼吧:

...//省略

:app:mergeDebugResources

Exception in thread "png-cruncher_5" java.lang.RuntimeException: Timed out while waiting for slave aapt process, try setting environment variable SLAVE_AAPT_TIMEOUT to a value bigger than 5 seconds

at com.android.builder.png.AaptProcess.waitForReady(AaptProcess.java:104)

at com.android.builder.png.QueuedCruncher$1.creation(QueuedCruncher.java:107)

at com.android.builder.tasks.WorkQueue.run(WorkQueue.java:206)

at java.lang.Thread.run(Thread.java:745)

Exception in thread "png-cruncher_10" java.lang.RuntimeException: Timed out while waiting for slave aapt process, try setting environment variable SLAVE_AAPT_TIMEOUT to a value bigger than 5 seconds

at com.android.builder.png.AaptProcess.waitForReady(AaptProcess.java:104)

at com.android.builder.png.QueuedCruncher$1.creation(QueuedCruncher.java:107)

at com.android.builder.tasks.WorkQueue.run(WorkQueue.java:206)

at java.lang.Thread.run(Thread.java:745)

...//省略

由於類似報錯,並不是非常常見,而且很多時候情況也各有不同,網上很難找到類似問題的解決方案,還是只有自己動手。首先,按照網上提示的設置環境變量“SLAVE_AAPT_TIMEOUT”,延長超時的時間、更改build-tools的版本、更新build-tools、升級android studio、關掉殺毒軟件都不管用。

最後,只好結合編譯時的萬能的日誌進行分析,肯定是在編譯時打包資源時出了問題,這就涉及到aapt打包資源的問題,所以最終還是懷疑到了build-tools上面。因為aapt.exe這個文件就在每個版本的build-tools文件夾下,但之前更新過build-tools、更改過build-tools的版本並不管用,再結合網上提示有可能是殺毒軟件的問題,想到是不是殺毒軟件將build-tools中的文件標記位病毒導致的,最後找同事要了壹份他電腦上的build-tools,對比發現裏面的很多文件內容的確不同,拷貝過來,重新編譯,異常成功解決!

雖然這是壹個比較簡單的異常錯誤,但是如果在實際操作的過程中,沒有實際的深入分析壹下產生問題的原因,而是直接去參考類似問題的解決辦法,然後壹壹去試的話,還是比較耗時的。

這個異常及解決方案的分享,不僅是為了幫助大家更好的解決Android studio編譯中的這類問題,同時也是提醒大家在遇到程序報錯時,需要先分析壹下具體原因,再尋求解決辦法,這樣可能會事半功倍些。看完本文的分享,如果大家還有任何疑問,可以直接在“學習問答”版塊中提出。

  • 上一篇:家委會簡短的發言稿(精選5篇)
  • 下一篇:設單片機系統如何編寫壹個完整的C51程序使P1.6和P1?
  • copyright 2024編程學習大全網