[android-studio] Android Studio 3.0 : : app @ dexOptions / compileClasspath ‘에 대한 종속성을 확인할 수 없습니다 : 프로젝트를 해결할 수 없습니다 : : animators

Android Studio 3.0으로 마이그레이션합니다. 따라서 프로젝트는 “: animator”라는 모듈을 컴파일 할 수 없으며이 오류를 표시합니다.

 Error:Unable to resolve dependency for
 ':app@dexOptions/compileClasspath': Could not resolve project
 :animators. <a
 href="openFile:/home/mobilepowered/MobilePowered/MyInnovalee/trunk17-10-2017/app/build.gradle">Open
 File</a><br><a href="Unable to resolve dependency for
 &#39;:app@dexOptions/compileClasspath&#39;: Could not resolve project
 :animators.">Show Details</a>

세부 정보 표시는 다음과 같은 로그를 제공합니다.

 Unable to resolve dependency for ':app@dexOptions/compileClasspath':
 Could not resolve project :animators.

 Could not resolve project :animators. Required by:
     project :app
 Unable to find a matching configuration of project :animators:
      - Configuration 'debugApiElements':
          - Required com.android.build.api.attributes.BuildTypeAttr 'dexOptions' and found incompatible value 'debug'.
          - Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and
 found compatible value 'Aar'.
          - Found com.android.build.gradle.internal.dependency.VariantAttr 'debug' but
 wasn't required.
          - Required org.gradle.api.attributes.Usage 'java-api' and found compatible value 'java-api'.
      - Configuration 'debugRuntimeElements':
          - Required com.android.build.api.attributes.BuildTypeAttr 'dexOptions' and found incompatible value 'debug'.
          - Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and
 found compatible value 'Aar'.
          - Found com.android.build.gradle.internal.dependency.VariantAttr 'debug' but
 wasn't required.
          - Required org.gradle.api.attributes.Usage 'java-api' and found incompatible value 'java-runtime'.
      - Configuration 'releaseApiElements':
          - Required com.android.build.api.attributes.BuildTypeAttr 'dexOptions' and found incompatible value 'release'.
          - Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and
 found compatible value 'Aar'.
          - Found com.android.build.gradle.internal.dependency.VariantAttr 'release' but
 wasn't required.
          - Required org.gradle.api.attributes.Usage 'java-api' and found compatible value 'java-api'.
      - Configuration 'releaseRuntimeElements':
          - Required com.android.build.api.attributes.BuildTypeAttr 'dexOptions' and found incompatible value 'release'.
          - Required com.android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and
 found compatible value 'Aar'.
          - Found com.android.build.gradle.internal.dependency.VariantAttr 'release' but
 wasn't required.
          - Required org.gradle.api.attributes.Usage 'java-api' and found incompatible value 'java-runtime'.



답변

Android Studio 2.3 (AS)을 사용하면 프로젝트가 제대로 작동하고 앱을 실행할 수 있습니다. AS를 Android Studio 3.0으로 업데이트 한 후 라이브러리 및 빌드 유형에 대해 아래와 같이 오류가 발생했습니다.

Unable to resolve dependency for ':app@dexOptions/compileClasspath': Could not resolve project : library_Name.

Unable to resolve dependency for ':app@release/compileClasspath': Could not resolve project : library_Name.

간단히 문제를 해결하십시오.

무엇을

buildTypes{
          debug{ ... }
          release{ ... }
    }

당신은 당신에있는 (응용 프로그램) build.gradle의 당신은 모든 포함 할 파일 buildTypes{ }과 같은 이름을 같은

buildTypes{
      debug{ ... }
      release{ ... }
}

build.gradle의 파일에 모든 라이브러리 / 모듈은 프로젝트에 포함 .

프로젝트를 정리하고 다시 빌드하면 문제가 해결됩니다.

여전히 문제가 해결되지 않으면 gradle-wrapper.properties를 다음으로 업데이트하십시오.

distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip


답변

공식 마이그레이션 안내서에 명시된 바와 같이이 오류는 다음과 같은 경우에 발생합니다.

앱에 라이브러리 종속성이없는 빌드 유형이 포함되어 있습니다.

android {
  buildTypes {
      release {
          ...
      }
      dexOptions {
          ...
        // release & debug is in project animators
        matchingFallbacks = ['release', 'debug']
      }
      debug {
          ...
      }
    }
}

정보를 찾을 수있는 올바른 장소는 이제이 문서입니다


답변

당신이 당신의 프로젝트에 있는지 확인

  1. 파일 > 설정 (Mac의 경우
    Android Studio > 환경 설정)을 클릭하여 환경 설정을여십시오. ) .
  2. 왼쪽 분할 창에서 빌드, 실행, 배치 >> Gradle을 클릭 하십시오 .
  3. 확인란을 선택 취소 / 비활성화 합니다 Offline work.
  4. 적용 또는 확인을 클릭 하십시오 .

답변

나는이 문제에 많은 시간을 보냈으며 위의 해결책 중 어느 것도 나를 위해 작동하지 않습니다. 앱 및 라이브러리 프로젝트에서 빌드 유형의 이름과 개수도 정확히 동일했습니다.

내가하고있는 유일한 실수는-라이브러리 프로젝트의 build.gradle에서 줄을 사용하고있었습니다.

플러그인 적용 : ‘com.android.application’

이 줄은-

플러그인 적용 : ‘com.android.library’

이 변경을 수행 한 후이 오류가 해결되었습니다.


답변

모두 수정

compile project(':library:yourproject')

implementation project(path: ':library:yourproject', configuration:'default')

앱 build.gradle에서. 구성이있는 줄에 유의하십시오.


답변

오프라인 작업 을 확인 취소하는 것부터 matchingFallbacks 까지 모든 것을 시도했습니다 . 그러나 아무것도 효과가 없었습니다.

그런 다음 app.gradle의 종속성 에서

대신에

구현 프로젝트 ( ‘: lib-name’)

나는 사용했다.

구현 프로젝트 (경로 : ‘: lib-name’, 구성 : ‘default’)

예 : implementation project(path:':myService', configuration:
'default')

그리고 그것은 매력처럼 작동했습니다. 🙂

나는 서비스의존성 모듈 을 추가하고 라이브러리를 AOSP 프로젝트 의 일부로 만들고 있지 않습니다 .

경우에 따라 누군가에게 도움이됩니다.


답변

해결책:

Gradle의 궁극적 인 버전을 Dowload

http://services.gradle.org/distributions/

gradle-4.x-rc-1-all.zip.sha256 09-Jan-2018 01:15 +0000 64.00B

배포판 압축 풀기

Android Studio-> 파일-> 설정-> Gradle-> 로컬 gradle 배포 사용으로 이동 파일 검색 및 확인

gradle : app에서 implementation (path : ‘: animators’, configuration : ‘default’)를 작성하십시오.

dependencies {
   .
   .
   .


    implementation project(path: ':animators', configuration: 'default')


}