gradle BUG!源单元“_BuildScript_”类org.codehaus.groovy.ast.expr.TupleExpression中的“转换”阶段出现异常

nhaq1z21  于 2023-08-06  发布在  其他
关注(0)|答案(1)|浏览(168)

我用vs代码在flutter上开发,我的jdk是java 19,gradle版本是7.6,android studio版本是flamning 2022.2.1。下面是我的gradle wrapper proties文件:

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-all.zip

字符串
我尝试运行./gradlew signingreport命令,但得到以下错误:

> PS C:\Users\Republic-Of-Computer\amnir\android> ./gradlew
> signingreport  FAILURE: Build failed with an exception.
> * Where: Build file 'C:\Users\Republic-Of-Computer\amnir\android\build.gradle' line: 32
> 
> * What went wrong: A problem occurred evaluating root project 'android'.
>     > A problem occurred configuring project ':app'.
>        > Could not open cp_proj generic class cache for build file 'C:\Users\Republic-Of-Computer\amnir\android\app\build.gradle'
> (C:\Users\Republic Of
> Computer\.gradle\caches\7.6\scripts\4pdap60mfom4g0rgb39ojh57o).
>           > BUG! exception in phase 'conversion' in source unit '_BuildScript_' class org.codehaus.groovy.ast.expr.TupleExpression
> cannot be cast to class 
>     org.codehaus.groovy.ast.expr.ArgumentListExpression (org.codehaus.groovy.ast.expr.TupleExpression and
> org.codehaus.groovy.ast.expr.ArgumentListExpression are in unnamed
> module of loader
> org.gradle.internal.classloader.VisitableURLClassLoader @182decdb)
>     
>     * Try:
>     > Run with --stacktrace option to get the stack trace.
>     > Run with --info or --debug option to get more log output.
>     > Run with --scan to get full insights.


这是我的build.gradle文件

buildscript {
    ext.kotlin_version = '1.7.10'
    repositories {
        google()
        mavenCentral()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:7.3.0'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        // classpath "com.google.gms.google-services:4.3.15"
        classpath 'com.google.gms:google-services:4.3.15'

    }
}

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


rootProject.buildDir = '../build'
subprojects {
    project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
    project.evaluationDependsOn(':app')
}

tasks.register("clean", Delete) {
    delete rootProject.buildDir
}


我使用Flutter版本3.10.2

Flutter 3.10.2 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 9cd3d0d9ff (6 weeks ago) • 2023-05-23 20:57:28 -0700
Engine • revision 90fa3ae28f
Tools • Dart 3.0.2 • DevTools 2.23.1

vmjh9lq9

vmjh9lq91#

我已经解决了这个问题。问题出现在app/build.gradle文件的plugins { }部分。错误配置如下所示:

plugins {
  id 'com.android.application'

  // Add the Google services Gradle plugin
  id 'com.google.gms.google-services'

  id  plugin: 'kotlin-android'
  from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
}

字符串
正确的配置应该是:

plugins {
  id 'com.android.application'

  // Add the Google services Gradle plugin
  id 'com.google.gms.google-services'

  id 'kotlin-android'
  from "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
}


或者,您可以直接从build.gradle中删除plugins块,并像这样配置:

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'com.google.gms.google-services'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"


这些变化应该解决我所面临的问题。

相关问题