gson 更新firebase-perf插件后,Android Studio项目未编译(缺少类模块信息)

v7pvogib  于 2022-11-06  发布在  Android
关注(0)|答案(2)|浏览(200)

我使用的是gradle版本5.6.2。我更新了我的android studio项目依赖项,如下所示:

dependencies {
    classpath 'com.android.tools.build:gradle:3.5.1'
    classpath 'com.google.gms:google-services:4.3.2'
    classpath "com.google.firebase:perf-plugin:1.3.1"
}

我这样应用插件:

apply plugin: 'com.google.firebase.firebase-perf'
apply plugin: 'com.google.gms.google-services'

但是现在当我编译我的项目时,这个错误出现了:

Illegal class file: Class module-info is missing a super type. Class file version 53. (Java 9)

它说问题出在app\build\intermediates\transforms\FirebasePerformancePlugin\bus\debug\9\module-info.class中
里面有这个:

module com.google.gson {
    requires transitive java.sql;

    exports com.google.gson;
    exports com.google.gson.annotations;
    exports com.google.gson.reflect;
    exports com.google.gson.stream;
}

我猜firebase开始使用Java 9,但我的项目当前使用的是Java 8。我尝试将版本更改为9,但收到以下错误:

Could not target platform: 'Java SE 9' using tool chain: 'JDK 8 (1.8)'.
bfhwhh0e

bfhwhh0e1#

这是a bug in the Android Gradle plugin,现在已在Android Studio 3.6中修复。它看起来只是Windows上的一个问题,因为路径格式使用了反斜杠\而不是正斜杠/。我确认我可以在Linux上的Android Studio 3.5上构建我的应用,但不能在Windows上。

iyfamqjs

iyfamqjs2#

通过将此添加到build.gradle临时解决了此问题:

debug {
          FirebasePerformance {
            // Set this flag to 'false' to disable @AddTrace annotation processing and
            // automatic HTTP/S network request monitoring
            // for a specific build variant at compile time.
            instrumentationEnabled false
          }
        }

相关问题