Google Android Studio 3.4 (gradle 5.1.1) 端点框架中断

Google endpoint framework breaks for Android Studio 3.4 (gradle 5.1.1)

我有一个使用 Google App Engine 和 Android 的项目。

升级到 Android Studio 3.4 (gradle 5.1.1) 后出现以下 "gradle project sync failed" 错误。

它在之前使用 gradle 4.10.1 的 android 工作室版本中运行良好。

欢迎任何指点。如果您需要我提供更多信息,请告诉我

Caused by: java.lang.NoSuchMethodError: org.gradle.api.tasks.SourceSetOutput.getClassesDir()Ljava/io/File;
at com.google.cloud.tools.gradle.endpoints.framework.server.EndpointsServerPlugin.execute(EndpointsServerPlugin.java:108)
at com.google.cloud.tools.gradle.endpoints.framework.server.EndpointsServerPlugin.execute(EndpointsServerPlugin.java:98)

以下是后端模块的 build.gradle 文件。
这是在我使用迁移指南迁移到 GAE V2 之后 (https://cloud.google.com/endpoints/docs/frameworks/java/migrating-android)

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.google.cloud.tools:endpoints-framework-gradle-plugin:1.0.2'
        classpath 'com.google.cloud.tools:appengine-gradle-plugin:1.3.2'

    }
}

repositories {
    jcenter()
}

apply plugin: 'java'
apply plugin: 'war'

apply plugin: 'com.google.cloud.tools.appengine'
apply plugin: 'com.google.cloud.tools.endpoints-framework-server'

sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8

dependencies {

    // V2: Endpoints Framework v2 migration
    implementation 'com.google.endpoints:endpoints-framework:2.0.9'
    implementation 'javax.inject:javax.inject:1'
    implementation 'javax.servlet:servlet-api:2.5'

    implementation 'com.googlecode.objectify:objectify:5.1.9' 

}

为了让它再次工作,我不得不从 build.gradle (module:app )

中注释掉以下内容
//buildscript {
//    repositories {
//        jcenter()
//    }
//    dependencies {
//        // V2: Add the new Endpoints Framework plugin dependencies
//        classpath 'com.google.cloud.tools:endpoints-framework-gradle-plugin:1.0.3'
//    }
//}

相反,将类路径添加到 build.gradle(项目)

buildscript {
    repositories {
        jcenter()
        google() 
    }
    dependencies {
        // V2: Include this dependency when using Endpoints Framework v2
        classpath 'com.google.guava:guava:24.1-jre'

        //**moved from the build.gradle in module:app** 
        classpath 'com.google.cloud.tools:endpoints-framework-gradle-plugin:1.0.3'

///... <snips> the rest of the build.gradle file

更新自: 类路径 'com.google.cloud.tools:endpoints-framework-gradle-plugin:1.0.2' 到: 类路径 'com.google.cloud.tools:endpoints-framework-gradle-plugin:1.0.3'

在我的项目中解决了这个问题