1. 程式人生 > >分享以下編譯錯誤:java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException的一種解決方法

分享以下編譯錯誤:java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException的一種解決方法

最近一個專案從eclipse轉為了AS專案,修改依賴後第一次執行時碰到如下錯誤:

Error:Execution failed for task ':videoPlayer:transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException


距離上一次碰到這個問題有段時間了,一時也沒想起來當時是怎麼解決的,一開始還是很懵逼,隨著查閱相關資訊逐漸想起當時解決這個問題的方案,原因依然是jar包重複引用,所以我直接選擇了最便捷的解決方案,只需要一步就可以解決;

步驟:找到你的主工程所依賴的工程的build.gradle檔案,將錯誤資訊中提到的重複引用的jar包前面的compile改為provided,例如我上一次是V4的jar包重複引用,就將依賴的工程裡的V4 jar包依賴語句裡的compile改為provided,如圖所示,然後點選Sync Now就可以了!

PS:此方法不一定適用全部情況,如有其它方法歡迎留言分享,我在解決問題的過程中試過許多方法,有的方法很複雜,卻沒有效果,只有這個方法簡單粗暴卻行之有效,分享一下,希望能幫到大家!