타사 Gradle 플러그인이 원인 일 수 있습니다.


132

Android Studio 3.1로 업데이트 한 후이 오류 메시지가 나타납니다.

프로젝트가 잘 작동하고 이것은 대부분 경고 일 뿐이므로 내 질문은 경고의 의미는 무엇이며 어떻게 제거 할 수 있습니까?

gradle 파일의 관련 부품 :

이것은 내 프로젝트의 build.gradle

buildscript {
    ext {
        kotlin_version = '1.2.31'
        anko_version = '0.10.4'
        room_version = '1.0.0'
        support_version = '27.1.0'
        firebase_version = '12.0.0'
        gms_version = '12.0.0'
    }

    repositories {
        google()
        jcenter()
        maven { url 'https://dl.bintray.com/kotlin/kotlin-dev' }
        maven { url 'https://maven.fabric.io/public' }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.0'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

allprojects {
    repositories {
        google()
        jcenter()
        mavenCentral()
        maven { url "https://jitpack.io" }
        maven { url 'https://dl.bintray.com/kotlin/kotlin-dev' }
    }
}

그리고 이것은 내 앱의 build.gradle파일입니다.

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'

android {
    compileSdkVersion 27
    defaultConfig {
        minSdkVersion 21
        targetSdkVersion 27
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        multiDexEnabled true
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

1
issuetracker.google.com/issues/74537216 에 따르면 이 문제는 AS3.2
Angel Koh

Build> Rebuild Project나에게서
일함

답변:


143

이 문제를 해결하려면 "Run Configurations (구성 실행)"에서 제거 Instant App Provision 하고 Gradle-Aware Make.

Run -> Edit Configurations..

성공적인 빌드 후 내 실행 / 디버그 구성

AndroidStudio 3.1, Gradle Plugin 3.1.0및 Kotlin 라이브러리 버전이 1.2.30있습니다.


5
이것은 실제로 작동하지만 왜 발생했는지와 어떻게이 솔루션에 도달했는지에 대한 아이디어입니다.
16:54에

59
어떤 이유로 삭제 한 후에는 Instant App Provisions항상 원래 위치로 돌아갑니다.
16:59에

3
이것은 즉시 실행을 비활성화합니까?
Caleb_Allen

7
@Caleb_Allen 아니오, 그러나 아무도 즉시 실행을 사용하지 않습니다. 이것은 즉시 실행이 아닌 '인스턴트 앱'을위한 것입니다
Tim

4
이것이 @humazed와 같이 계속 돌아 오는 사람에게는 해결책을 찾았습니다. 먼저 Run > Edit Configurations다시 가십시오 . 그런 다음 Edit Defaults상단에 공구 모양 아이콘이있는 버튼을 클릭하여 이동 하십시오. 이전과 같이 선택 Android App하고 그대로 두십시오 Gradle-aware Make. 적용하십시오.
b_yng

17

Android Studio를 다시 시작했는데 문제가 사라졌습니다.

파일-> 캐시 무효화 / 다시 시작을 클릭하십시오.

gradle 파일을 변경할 때마다 Android Studio를 다시 시작하거나 문제가 다시 발생해야합니다.

당신은 또한 이것을 시도 할 수 있습니다 :

  1. 리포지토리를 다음과 같이 재정렬했습니다.

    mavenCentral()
    maven { url 'https://jitpack.io' }
    google()
    jcenter()
  2. 이 폴더를 지우십시오 : 사용자 ~ / .gradle / caches 및 수동으로 앱 빌드 폴더를 삭제 한 다음 정리하고 다시 빌드하십시오 .


그러나 앱을 시작하기 전에 프로젝트를 빌드하므로 여전히 앱을 실행할 수 없습니다.
무한 루프

7

나를 위해 문제를 해결 한 것 :

  • gradle 플러그인 버전을로 변경하십시오. 3.1.0
  • Kotlin 버전을 다음으로 변경 1.2.30
  • 그런 다음 Android 스튜디오는 gradle 래퍼를 버전으로 변경했습니다. 4.4
  • 그런 다음 Android 스튜디오는 사용 된 빌드 도구 버전 27.0.3이며 변경해야 27.0.3하므로 대상 SDK를27
  • 나는 이것을 gradle.build에 추가했다.

    kapt {
         generateStubs = true
     }

나는 그것이 도움이되기를 바랍니다


5

android studio v3.1.2에서 오류가 발생했습니다.

Folder D:\AndroidProjects\app\build\generated\source\kaptKotlin\debug
Folder D:\AndroidProjects\app\build\generated\source\kaptKotlin\release
3rd-party Gradle plug-ins may be the cause

dataBinding을 사용 apply plugin: 'kotlin-kapt'하면 추가되므로

kapt {
    generateStubs = true
}
  1. gradle 플러그인 버전을 3.1.2로 변경하십시오.
  2. Kotlin 버전을 1.2.30으로 변경
  3. 그런 다음 Android 스튜디오는 gradle 래퍼를 버전 4.4로 변경했습니다.
  4. 그런 다음 Android 스튜디오는 사용 된 빌드 도구 버전이 27.1.1이며 27.1.1로 변경해야하므로 대상 SDK도 27로 변경했습니다.

5

다음은 몇 가지 단계입니다. 내 경우에는 문제가 해결되었습니다!

Android를 대상으로하는 플랫폼 모듈 실험적인 멀티 플랫폼 프로젝트 기능의 업데이트는 Android 플랫폼 모듈에 대한 지원을 도입합니다. 이 모듈은 Gradle 빌드 스크립트에서 해당 플러그인을 적용해야하며 공통 모듈의 공유 코드를 사용할 수 있습니다.

apply plugin: 'com.android.application'
apply plugin: 'kotlin-platform-android'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'
// ...
// ...

Kapt 진단 위치 현재 Kotlin 주석 처리 도구 인 kapt는 주석 처리 중에 발생한 오류를보고하여 생성 된 Java 스텁이 아닌 원래 Kotlin 코드의 위치에 대한 링크를 제공 할 수 있습니다. 다음 행을 Gradle 빌드 스크립트 (build.gradle)에 추가하여이 기능을 사용할 수 있습니다.

kapt {
    mapDiagnosticLocations = true
}

이거 추가 해봐:

allprojects {
        repositories {
            jcenter()
            google()
        }
    }

다음을 잊지 마십시오 :

// Architecture Component - Room

     implementation "android.arch.persistence.room:runtime:1.1.0-beta1"
        kapt "android.arch.persistence.room:compiler:1.1.0-beta1"

      // Lifecyles, LiveData and ViewModel
    kapt 'com.android.databinding:compiler:3.1.0'


 // ViewModel and LiveData
    implementation "android.arch.lifecycle:extensions:1.1.1"

// alternatively, just ViewModel
    implementation "android.arch.lifecycle:viewmodel:1.1.1"

 // alternatively, just LiveData
     implementation "android.arch.lifecycle:livedata:1.1.1"
       kapt "android.arch.lifecycle:compiler:1.1.1"

 // Room (use 1.1.0-beta1 for latest beta)
    implementation "android.arch.persistence.room:runtime:1.0.0"
      kapt "android.arch.persistence.room:compiler:1.0.0"


// Paging
    implementation "android.arch.paging:runtime:1.0.0-alpha7"

        // Test helpers for LiveData
    testImplementation "android.arch.core:core-testing:1.1.1"

        // Test helpers for Room
 testImplementation "android.arch.persistence.room:testing:1.0.0"
  1. 프로젝트 정리

  2. 빌드와 그게 다야!

이 모든 것을 추가하고 프로젝트를 정리하고 빌드하면 끝입니다! :) 이것이 작동하는지 알려주세요! (작동하지 않으면 다른 솔루션으로 도와 드리겠습니다)

추가 정보 : Android 사이트 :) 작동하는지 알려주세요! (작동하지 않으면 더 나은 방법을 찾도록 도와 드리겠습니다)

당신이 downVote를주는 경우 이유를 설명


1
구성에 라인 mapDiagnosticLocations = true을 추가하는 kapt작업-때때로 적어도 : /
kuhnroyal

@kuhnroyal 나는 당신의 의견을 appreaciate! 좋은 하루 되세요. 더 나은 솔루션을 계속 찾고 있습니다
Cristofer


3

필자의 경우 위의 솔루션 중 어느 것도 내 문제를 해결하지 못했지만 Instant Run에 대한 언급없이 1.2.50 Kotlin 버전을 사용하고 있었고 빌드가 Dagger 클래스를 생성하지 않았으므로 내 문제를 해결 한이 질문을 발견했습니다. 내 상황에서는 새로운 Kotlin 버전과 관련된 문제이므로 1.2.41 버전으로 다운 그레이드하고 정상적으로 작동했습니다. 그건 그렇고, 빌드 화면에서 토글 뷰를 사용했기 때문에 그 시점까지 추적했습니다.

1 : 토글 뷰를 선택하고 프로젝트를 빌드하십시오.

보기 전환

2 : 당신은 정확히 무슨 일이 있었는지 볼 수있을 것입니다

오류

stackoverflow question : Kotlin 1.2.50에서 baseFeatureInfoDir을 요청합니다.

이슈 트래커 : https://issuetracker.google.com/issues/110198434



2

다음은 내가 수행 한 몇 가지 단계이며 내 경우 문제가 해결되었습니다.

  1. 먼저 kotlin 플러그인 버전을 '1.2.31'로 설치하고 아래와 같이 build.gradle 파일에서 업데이트하십시오.

의존성 {classpath 'com.android.tools.build:gradle:3.1.0'classpath "org.jetbrains.kotlin : kotlin-gradle-plugin : $ 1.2.31"}

  1. 깨끗한 프로젝트.

  2. 마지막으로 프로젝트를 다시 빌드하십시오.


1
  1. 없애다 apply plugin: 'kotlin-kapt'
  2. mavenCentral()다음과 같이 build.gradle에 추가하십시오 .

    allprojects { repositories { mavenCentral() google() jcenter() } }

  3. 동기화 및 정리 프로젝트

0

내 사건에 대해이 문제를 해결하는 방법은 다음과 같습니다.

우선 프로젝트 빌드 gradle 파일에서 android gradle 플러그인 버전을 업데이트 한 다음 gradle 속성에서 gradle 버전을 업데이트하십시오.

마지막으로 프로젝트 빌드 gradle 파일에서 kotlin 버전 (필수)을 kotlin_version = '1.2.30'이상으로 업데이트하십시오.

이제 프로젝트를 정리하고 빌드하십시오. 문제가 해결되어야합니다. 빌드 후 다시 빌드하면 매번 문제가 다시 발생하므로 프로젝트를 다시 정리 한 다음 빌드하십시오.



0

제거 할 수없는 사람들을위한 다른 답변 추가Instant App Provision를 다시 표시하기 때문에 .

프로젝트를 수동으로 빌드하십시오. ./gradlew assembleDebug

핫픽스이지만 문제가 Android Studio와 관련되어 있기 때문에 작동합니다.


0

안드로이드 스튜디오에서 kotlin과 함께 Realm 을 사용할 때이 문제가 발생했습니다 .
해결하려면 다음 단계를 따르십시오.

  1. 프로젝트 build.gradle에 Realm을 추가 한 후 app build.gradle 파일이 다음과 같은지 확인하십시오.

    apply plugin: 'com.android.application'  
    apply plugin: 'kotlin-android'  
    apply plugin: 'kotlin-android-extensions'  
    apply plugin: 'kotlin-kapt'  
    apply plugin: 'realm-android'  
    .  
    .  
    .  
    androidExtensions {  
    experimental = true
    }
  2. 앱 build.gradle 종속성 kapt대신에 사용하십시오 annotationProcessor.

  3. 옵션으로 이동하여 Run -> Edit Configurations..제거하십시오 Instant App Provision.

  4. Android Studio의 터미널에서이 명령을 실행하십시오.

    gradlew assembleDebug  
  5. 괜찮아 !

참고 : "타사 Gradle 플러그인이 원인 일 수 있습니다"메시지가 다시 표시되면 3 단계 및 4 단계를 다시 수행하십시오.


0

Gradle 4.6 이상으로 요청시 구성 : Gradle 4.6 이상으로 Android Gradle Plugin 3.0.x 또는 3.1.x를 사용하는 경우 예기치 않은 빌드 오류를 피하기 위해 요청시 구성을 비활성화해야합니다. (Android Gradle Plugin 3.2.0 이상을 사용하는 경우 필요에 따라 구성을 비활성화하기 위해 조치를 취할 필요가 없습니다.)

아래와 같이 gradle.properties 파일에서 요청시 구성을 비활성화하십시오.

org.gradle.configureondemand = false Android Studio 설정에서 요청시 구성을 비활성화하려면 파일> 설정 (Android Studio)을 선택하십시오.

Mac의 환경 설정)에서 왼쪽 분할 창의 컴파일러 카테고리를 선택한 후 필요시 구성 선택란을 지우십시오.

Android Studio 3.2 베타 1 이상에서는 요청시 구성을 활성화하는 옵션이 제거되었습니다. 아래 링크에서 알려진 문제 섹션을 읽으십시오. 여기에 링크 설명을 입력하십시오


0

실제로, 나는 또한 같은 오류에 직면했다. 내가 한 것은 최신 kotlin 버전을 업데이트하는 것 입니다. 문제가 해결 될 수 있습니다.


-4

글쎄, 나는 그것이 apply plugin: 'kotlin-kapt' build.gradle (app) 에서이 줄을 삭제하면 성공적으로 빌드됩니다 ...

이 플러그인으로 인해 이러한 경고가 발생하는 이유를 모릅니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.