web-dev-qa-db-ja.com

エラー:コンパイルをgradle(dependency)の実装に置き換えると

Android Studioを3.0.1から3.1.0に更新します

しかし、更新後、プロジェクトをビルドすると、2警告が表示されます。

1。コンパイルを実装に置き換えます(そしてコンパイルサポートは2018年末に終了します)

2。 testCompileをtestImplementaionに置き換えます(testCompileのサポートは2018年末に終了します)

したがって、最後にこれらの変更を行いますが、その後、いくつかのエラーが表示されます:

error

build.gradle(Module:app)

apply plugin: 'com.Android.application'

Android {
    compileSdkVersion 27
    defaultConfig {
        applicationId "biz.coolpage.aashish.app"
        minSdkVersion 17
        targetSdkVersion 27
        versionCode 4
        versionName "1.2.0"
        testInstrumentationRunner "Android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled true
            shrinkResources true
            proguardFiles getDefaultProguardFile('proguard-Android-optimize.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.Android.support:design:27.1.0'
    implementation project(':library')
}

build.gradle(Project:Abc)

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

allprojects {
    repositories {
        jcenter()
        google()
        maven {
            url "https://maven.google.com"
        }
    }
}

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

ライブラリのgradle内でapiの代わりにimplementationを使用してみてください。サブモジュールがあり、推移的な方法でライブラリを公開したい場合は、apiを使用する必要があります。 implementationは、特定のプロジェクトのライブラリをインポートします。また、追加する必要があるかもしれません

implementation (project(":library")) {
    transitive = true
}

たとえばあなたのbuild.gradleライブラリモジュールの使用ファイル:

api 'com.Android.support:appcompat-v7:27.1.0' 

の代わりに

implementation 'com.Android.support:appcompat-v7:27.1.0'

何も機能しない場合は、次のことを試みることができますキャッシュを無効にして再起動します

6
HawkPriest

行ったことがある; Gradleプラグインが最新であり、プラグインのソースコードに何も追加または削除していないことを確認するだけで、準備は完了です。

0
smith atenaga