OKHTTP와 RX 및 기타 삼자 패키지 충돌에 대한 질문입니다. Error: Program type already present: rx.android.BuildConfig

2223 단어 일상적인 오류

문제 설명

  • Error: Program type already present:okio.AsyncTimeout;
  • Error: Program type already present: rx.android.BuildConfig;
  • Error: Program type already present: okio.Buffer$1;
  • Error: Program type already present: okhttp3.Authenticator$1;
  • Error: Program type already present: rx.android.BuildConfig;

  • 솔루션


    1、`
    android {
        	packagingOptions {
    	        exclude 'META-INF/LICENSE'
            	exclude 'META-INF/NOTICE'
            	exclude 'META-INF/rxjava.properties'
            	exclude 'META-INF/rxandroid.properties'
       			 }
        	}
    

    2、
    defaultConfig {
            multiDexEnabled true
        }
    

    3、`
    dependencies {
    			configurations {
         		   /*all*.exclude group: 'com.squareup.okhttp3', module: 'okhttp'
           		 all*.exclude group: 'com.squareup.okio'*/
            	 all*.exclude group: 'com.squareup.okhttp3'
          	  	 all*.exclude group: 'com.squareup.okio'
        		}
    	}
    

    4. jar 인용의 선후 순서를 조정한다.
    5. AndroidStudio 콘솔에서 다음을 입력합니다.
    gradlew -q app:dependencies  
    

    의존 관계를 확인한 후 불필요한 의존jar 패키지를 삭제합니다.

    좋은 웹페이지 즐겨찾기