【Android】【IDE】AndroidStudio3.5編譯出現D8 Errors: Program type already present問題解決方案

Program type already present這個問題,一般是由於項目中多個模塊引用了相同的庫,但版本號不同引起的衝突

但今天我更新了AndroidStudio和Gradle版本後,本來正常的項目,突然就報了這個錯誤,顯然這個不是由以上正常原因引起的

一來這個項目本來正常的,如果有衝突早就報錯了,二來報錯的衝突類是一個第三方的毫無名氣甚至有點垃圾的類,只是公司項目集成別人的外設,沒辦法才使用的,肯定沒有別的模塊會使用這個類,所以可以肯定不是正常原因引發的

由於剛剛修改了Gradle版本,就纔想會不會是這個問題,於是嘗試去修改項目gradle文件中的gradle插件版本號,果然可以成功編譯了
雖然這個也不一定適合其它人的問題,但是記錄下來,可以多提供一種解決方案,能幫助到一部分開發者

大家一定要先確認是不是庫衝突造成的,不是庫衝突的問題再來試這個方案,確實不是庫衝突造成的,沒有頭緒再試這個方案


	buildscript {
	
	    repositories {
	        mavenCentral()
	        jcenter()
	        maven {
	            url 'http://maven.aliyun.com/nexus/content/repositories/releases/'
	        }
	        maven {
	            url 'https://jitpack.io'
	        }
	        google()
	    }
	    
	    dependencies {
	    	//本來gradle編譯工具版本號是3.5.0,改成3.2.1後編譯成功
	        classpath 'com.android.tools.build:gradle:3.2.1'
	        classpath 'org.greenrobot:greendao-gradle-plugin:3.2.2'
	        classpath 'com.jakewharton:butterknife-gradle-plugin:10.1.0'
	    }
	}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章