2017-11-30 8 views
1

API 26을 사용하여 프로젝트를 시작했습니다. 얼마 후 API 25로 가고 싶다고 결정 했으므로 compileSdkVersion, targetSdkVersionminSdkVersion26-> 25로 바 꾸었습니다. 그러나, 나는 Gradle을 동기화에 오류가 계속/구축의 말 : 처음에는API를 26.1에서 25.4로 다운 그레이드 할 것을 강요합니다.

Error:Execution failed for task ':app:processDebugManifest'. Manifest merger failed : Attribute meta-data#[email protected] value=(25.4.0) from [com.android.support:design:25.4.0] AndroidManifest.xml:28:13-35 is also present at [com.android.support:support-core-utils:26.1.0] AndroidManifest.xml:28:13-35 value=(26.1.0). Suggestion: add 'tools:replace="android:value"' to element at AndroidManifest.xml:26:9-28:38 to override.

내가 (코어 유틸 같은) 여전히 26.1.0를 가리 일부 "외부 라이브러리"그래서 25.4을 사용하여 강제로 시도 것을보고 .0 build.gradle 파일에 있지만 26.1 여전히 아래 스크린 샷에서 볼 수있는 링크. 25.4.0으로 다운 그레이드하려면 어떻게해야합니까?

enter image description here

답변

3

나는 점을 문제를 고정하는 두 가지 작업을 수행 유사한 문제가 발생할 때,

  1. ./gradlew <module_name>:dependencies을 사용하면 예상치 못한 지원 라이브러리 버전으로 전복되는 문제를 해결할 수 있습니다.
  2. 그리고이 정보를 모듈에 갖다 놓은 상태에서 (프로젝트에 1 개의 gradle 모듈 만있는 것처럼 보입니다) 모듈의 build.gradle에 다음과 같이 resolutionStrategy을 명시 적으로 정의하십시오.

스 니핏;

configurations.all { 
    resolutionStrategy.force "com.android.support:support-core-utils:{version}" 
} 

희망이 있습니다.

+0

해결책이 효과가 있습니다. 그러나이 명령을 실행할 때 종속성을 볼 수 없습니다. 출력은 > 작업 : 종속성 ----------------------------------------- ------------------- 루트 프로젝트 --------------------------- --------------------------------- 구성이 없음 2시에 성공적으로 빌드 – Mike

+0

죄송합니다. @Mike - 읽어야합니다. ''''./gradlew : 종속성''''그래서 당신의 경우''''./gradlew app : dependencies''''' – OceanLife