前言
開發(fā)中遇到的問題
gradle編譯出現(xiàn)Program type already present:com.xx.xx
如果你也遇到了相同的問題,有望在1分鐘之內(nèi)找到問題所在,往下讀吧
如圖:

錯誤圖1
也可以點(diǎn)開詳細(xì)信息

錯誤圖2
仔細(xì)查看發(fā)現(xiàn)是一個類 存在Program type already present
Caused by: com.android.builder.multidex.D8MainDexList$MainDexListException: com.android.tools.r8.errors.CompilationError: Program type already present: com.sensetime.ad.sdk.StFaceAttribute
at com.android.builder.multidex.D8MainDexList.generate(D8MainDexList.java:87)
at com.android.build.gradle.internal.transforms.D8MainDexListTransform.transform(D8MainDexListTransform.kt:114)
... 50 more
在網(wǎng)上搜了一下 有建議加上multiDexEnabled true的 也有的建議去掉multiDexEnabled true 試了一下都沒有解決問題,
其實(shí)仔細(xì)讀一下錯誤信息還是可以看出來的,其實(shí)就是這個類已經(jīng)加載或存在了,也就是說很大的可能是因?yàn)橹貜?fù)引入了這個類,所以就去檢查了這個類都存在哪些jar包中,最后在引用里發(fā)現(xiàn)這兩個引用里面都有這個類,所以這個問題去掉一個就解決了,當(dāng)遇到這個問題的時候可以檢查下jar包有沒有重復(fù)的
image.png
希望這篇文章可以幫助到需要的人,如果還有其他問題或者補(bǔ)充可以聯(lián)系我~~~
