source

여전히 경고 메시지가 표시됨: 구성 'compile'이 더 이상 사용되지 않으며 '구현'으로 대체되었습니다.

lovecheck 2023. 8. 25. 23:45
반응형

여전히 경고 메시지가 표시됨: 구성 'compile'이 더 이상 사용되지 않으며 '구현'으로 대체되었습니다.

발생을 대체했습니다.compile타고implementation내프젝트의에서.build.gradle하지만 여전히 경고를 받고 있습니다

enter image description here

프로젝트 전체에서 "컴파일"을 찾아보았지만 일치하는 항목을 찾을 수 없었습니다.그렇다면 무엇이 원인이 될 수 있을까요?

업데이트했습니다.com.google.gms:google-services3.1.13.2.0그리고 경고는 나타나지 않았습니다.

buildscript {

    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath("com.android.tools.build:gradle:3.1.0")

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
    
    classpath("com.google.gms:google-services:3.2.0")
    }
}

com.google.gms:google-services에 동일한 경고가 발생했습니다.

해결책은 build.gradle 프로젝트의 파일에서 classpath com.google.gms:google-services를 classpath 'com.google.gms:google-services:3.2.0'으로 업그레이드하는 것입니다.

enter image description here

buildscript {
    repositories {
        jcenter()
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
        classpath 'com.google.gms:google-services:3.2.0'
    }
}

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

task clean(type: Delete) {
    delete rootProject.buildDir
}

Android Studio 버전 3.1의 종속성에서는 complete 단어를 구현으로 대체합니다.

Android 스튜디오 3.1의 Warning과의 종속성

dependencies {
            compile fileTree(dir: 'libs', include: ['*.jar'])
            compile 'com.android.support:appcompat-v7:27.1.0'
            compile 'com.android.support.constraint:constraint-layout:1.0.2'
            testImplementation 'junit:junit:4.12'
            androidTestImplementation 'com.android.support.test:runner:1.0.1'
            androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
    }

안드로이드 스튜디오 3.1의 종속성 정상

    dependencies {
            implementation fileTree(dir: 'libs', include: ['*.jar'])
            implementation 'com.android.support:appcompat-v7:27.1.0'
            implementation 'com.android.support.constraint:constraint-layout:1.0.2'
            testImplementation 'junit:junit:4.12'
            androidTestImplementation 'com.android.support.test:runner:1.0.1'
            androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'

    }

새 프로젝트를 위해 Android Studio 3.1에서 Gradel을 생성합니다.

Gradel generate by Android Studio 3.1 for new project.

https://docs.gradle.org/current/userguide/dependency_management_for_java_projects.html 를 방문하세요.

자세한 내용은 https://docs.gradle.org/current/userguide/declaring_dependencies.html .

com.google.gms:google-services를 3.2.0에서 3.2.1로 업데이트했는데 경고가 나타나지 않습니다.

 buildscript {

    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.1'
        classpath 'com.google.gms:google-services:3.2.1'

    }
}

구글 gms 서비스의 최신 버전을 사용하여 해결했습니다.

프로젝트 수준 build.gradle에서 다음을 수행합니다.

buildscript {
    ...
    dependencies {
        classpath 'com.google.gms:google-services:3.2.1'
        ...  
    }
}

다음 위치에 있는 build.gradle 파일을 엽니다.

enter image description here

이것은 종속성 라이브러리를 작성하는 오래된 방법입니다(그라들 버전 2 이하의 경우).

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile files('libs/volley.jar')
    compile 'com.android.support:support-v4:21.+'
}

다음은 Gradle 버전 3에 대한 종속성을 가져오는 새로운(올바른) 방법입니다.

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    testImplementation 'junit:junit:4.12'
    implementation files('libs/volley.jar')
    implementation 'com.android.support:support-v4:21.+'
}

구글 답장 : https://issuetracker.google.com/issues/74048134

컴파일을 사용하면 여전히 종속성이 있습니다. 응용프로그램 종속성과 과도 종속성을 주의 깊게 확인하십시오.

https://issuetracker.google.com/issues/72479188 은 플러그인이 때때로 "잘못된" 종속성을 초래할 수 있으며, 이로 인해 경고가 발생한다는 것을 나타냅니다.문제의 원인이 되는 플러그인을 지적하기 위해 문제를 해결할 때까지 기다리는 것이 가장 쉬울 것입니다.

라인을 제거할 필요가 없습니다.Jkrevis가 작성한 대로 com.google.gms:google-services를 3.2.0으로 업데이트하면 경고가 중지됩니다.

나의 경우, 그것은 Realm 라이브러리에 의한 것으로, 내가 Realm의 최신 버전(현재까지 5.1.0)으로 업데이트한 후, 문제가 해결되었습니다!

다음은 작업 Gradle 스크립트입니다.

buildscript {
repositories {
    jcenter()
    google()
}

dependencies {
    classpath 'com.android.tools.build:gradle:3.1.2'
    classpath "io.realm:realm-gradle-plugin:5.1.0"
    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
    classpath 'com.google.gms:google-services:3.2.1'
  }
}

사용하지 않으면 이 문제가 발생합니다.com.google.gms:google-services이러한 종류의 문제를 해결하는 해결책은 다음과 같습니다.

  1. 수표를 build.gradle모든 프로젝트 및 모듈의 파일입니다.또는 글로벌 검색 키워드 'compile'을 사용하여 이 경고의 원인을 찾으십시오.
  2. 으로 이할 수 경우 Command, "CLI Command"를 합니다. ./gradlew assembleDebug -d > gradle.log
    를 이이지파일상라는 합니다.gradle.log정보가 너무 많기 때문에 다른 어떤 것도. 다음 하여 "WARNING"이라는 단어에서 위치를 찾습니다.gradle.log일반적으로 어떤 의존성 또는 플러그인이 경고를 유발하는지 알 수 있습니다.

구글 서비스 버전을 업데이트하는 것만으로는 작동하지 않았습니다.

  • 종속성을 합니다.compile으로 implementation.
  • 프로젝트의 모든 종속성을 업데이트합니다.왜냐하면 만약 당신의 의존증 중 하나가compile그러면 프로젝트에 이 오류가 표시됩니다.모든 종속성 버전을 업데이트합니다.

나는 구글 gms 서비스를 최신으로 변경해 보았습니다.com.google.gms:google-services:3.2.1Android Studio 3.0.1에서 사용할 수 있습니다.

저는 모든 것을 했습니다.compileimplementation그리고.testCompiletestImplementation이렇게..

dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:mediarouter-v7:27.1.1'
implementation 'com.android.support:design:27.1.1'
implementation 'com.google.firebase:firebase-ads:12.0.1'
implementation 'com.google.firebase:firebase-crash:12.0.1'
implementation 'com.google.firebase:firebase-core:12.0.1'
implementation 'com.google.firebase:firebase-messaging:12.0.1'
implementation 'com.google.firebase:firebase-perf:12.0.1'
implementation 'com.google.firebase:firebase-appindexing:12.0.1'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
}

그리고 마침내 경고가 제거됩니다!

프로젝트 레벨의 build.gradle 파일로 이동하면 다음 행이 강조 표시됩니다.

dependencies {
    classpath 'com.android.tools.build:gradle:3.1.4'  //place your cursor over here 
    //and hit alt+enter and it will show you the appropriate version to select


    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files

    classpath 'com.google.gms:google-services:4.0.2' //the same as previously
}

나의 경우, 이전 종속성에 대해 컴파일을 사용하는 것은 오래된 종속성이었습니다.com.jakewharton.hugo

내 그라들에서 그것을 제거한 후에 그것은 컴파일되었습니다.

이 문제를 해결하기 위한 해결 방법은 이전 버전의 Gradle을 사용하는 것이었는데, 여기에서 찾을 수 있습니다.

gradle-3.0-rc-1-src 버전을 사용했지만 다른 버전도 작동할 수 있습니다. 3.0 버전보다 최신 버전은 아닐 것입니다.

먼저 zip 파일을 원하는 곳으로 압축을 풉니다.

그런 다음 File -> Settings -> Build, Execution, Deployment -> Gradle로 이동하여 Use local gradle distribution으로 설정을 변경합니다.그런 다음 Gradle Home 필드가 방금 압축을 푼 디렉토리의 .gradle 디렉토리를 가리키고 있는지 확인합니다.

프로젝트를 다시 빌드하면 모든 것이 정상일 것입니다.

현재 버전은 4.2.0입니다.

스크립트를 빌드합니다.

repositories {
    google()
    jcenter()
}
dependencies {
    classpath 'com.android.tools.build:gradle:3.4.0'

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
    classpath 'com.google.gms:google-services:4.2.0'
}

}

구글은 최근 2021년 9월에 자사의 서비스를 업데이트했습니다.업데이트를 했고 같은 문제에 직면한 후 안드로이드 스튜디오에서 build.gradle 파일을 업데이트합니다.

문제가 있는 이전 버전

 classpath 'com.google.gms:google-services:4.3.3'

build.gradle의 코드가 업데이트되었습니다.

classpath 'com.google.gms:google-services:4.3.10'

다음 두 가지 옵션을 수행할 수 있습니다.

  1. 프로젝트에 클래스 경로 'com.google.gms:google-services:3.2.0'을 추가합니다. build.gradle 종속성 및
  2. 모듈을 교체합니다. build.gradle 독립성이 구현을 준수하므로 경고 메시지가 표시되지 않습니다.

다음에서 추가build.gradle부터build script

classpath 'com.google.gms:google-services:3.2.0'

그리고 모든 의존성."compile"로 대체."implementation".

내게서 효과가 있었습니다.

컴파일을 구현으로 변경하는 것이 수정되었습니다.

전에

compile 'androidx.recyclerview:recyclerview:1.0.0'
compile 'androidx.cardview:cardview:1.0.0'
//Retrofit Dependencies
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'

끝나고

implementation 'androidx.recyclerview:recyclerview:1.0.0'
implementation 'androidx.cardview:cardview:1.0.0'
//Retrofit Dependencies
implementation 'com.squareup.retrofit2:retrofit:2.1.0'
implementation 'com.squareup.retrofit2:converter-gson:2.1.0'

여기에 언급된 솔루션을 모두 읽었지만, 운이 없었습니다.build.gradle 파일에서 아래와 같이 찾았습니다.

dependencies {
        classpath 'com.android.tools.build:gradle:3.3.0'
    }

아래와 같이 변경하여 저장하고 빌드 성공을 시도했습니다.

dependencies {
        classpath 'com.android.tools.build:gradle:3.2.0'
    }

build.gradle(앱)에 영향을 받았으면 합니다. 영향을 받았으면 다음 단계를 따르십시오.

컴파일을 build.grade의 AndroidTestImplementation으로 대체

androidTestImplementation 'com.android.support:appcompat-v7:27.1.1'
androidTestImplementation 'com.android.support:design:27.1.1'

매우 간단합니다! 이것이 해결되기를 바랍니다.

제 경우 문제는 gradle 파일에 다음 행이 있는 Google 서비스 gradle 플러그인이었습니다.

플러그인 적용: 'com.google.gms.google-services'

이 문제를 제거하면 문제가 해결됩니다.

go to you build.gradle(앱 수준)

build.gradle 모듈 앱

그리고 "discription"이라는 단어를 "discription"으로 대체합니다.

그것은 100% 작동할 것입니다.

언급URL : https://stackoverflow.com/questions/48709870/still-getting-warning-configuration-compile-is-obsolete-and-has-been-replace

반응형