1. ホーム
  2. android

[解決済み】警告:API 'variant.getJavaCompile()' は時代遅れで、 'variant.getJavaCompileProvider()' に置き換えられています。)

2022-04-14 12:23:31

質問

Gradleを同期させると突然このようなエラーが発生します。

警告: API 'variant.getJavaCompile()' は時代遅れで、もう使われなくなりました。 variant.getJavaCompileProvider()'に置き換わっています。 2019年末に削除される予定です。 詳細については、以下を参照してください。 https://d.android.com/r/tools/task-configuration-avoidance 影響を受けるモジュール:app

私はこれを build.gradle を app モジュールに使用します。

apply plugin: 'com.android.application'

apply plugin: 'kotlin-android'

apply plugin: 'kotlin-android-extensions'
apply plugin: 'com.google.gms.google-services'

apply plugin: 'io.fabric'

android {
    compileSdkVersion 28
    buildToolsVersion "28.0.2"
    defaultConfig {
        applicationId "..."
        minSdkVersion 21
        targetSdkVersion 28
        versionCode 1
        versionName "..."
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
        versionNameSuffix = version_suffix

        [...]
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'

            [...]
        }
        debug {
            [...]
        }
    }
}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.2.61"
    implementation 'androidx.appcompat:appcompat:1.0.0-rc02'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    implementation "com.android.support:preference-v7:28.0.0"
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test:runner:1.1.0-alpha4'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0-alpha4'
    implementation 'com.google.android.material:material:1.0.0-rc02'

    [...]
}

アプリは正常にコンパイルできるのですが、ちょっと気になるのが、このままでは2019年末に何かが動かなくなるのでは、ということです。何が原因なのか、どうすれば解決できるのか、何か心当たりはありませんか?

解決方法は?

この問題は、Fabric Gradle バージョン 1.30.0 のアップデートで修正されました。

アップデートリリース 2019年3月19日(木

こちらのリンクをご覧ください。 https://docs.fabric.io/android/changelog.html#march-15-2019

プロジェクトレベルのGradleでクラスパスの依存関係を更新してください。

buildscript {
    // ... repositories, etc. ...

    dependencies {
        // ...other dependencies ...
        classpath 'io.fabric.tools:gradle:1.30.0'
    }
}