java.lang.NoSuchMethodError:没有静态方法 registerDefaultInstance 与 Firebase 性能和 Espresso 仪器测试

Вла*_*шер 4 android firebase android-espresso firebase-performance

当我添加时,implementation 'com.google.firebase:firebase-perf-ktx:19.1.0'我无法启动浓缩咖啡仪器测试(“应用程序”方案构建正常)。当我尝试开始 Espresso 测试时,我有

Test running failed: Process crashed.
java.lang.NoSuchMethodError: No static method registerDefaultInstance(Ljava/lang/Class;Lcom/google/protobuf/GeneratedMessageLite;)V in class Lcom/google/protobuf/GeneratedMessageLite
Run Code Online (Sandbox Code Playgroud)

但如果我删除implementation 'com.google.firebase:firebase-perf-ktx:19.1.0'一切正常。如何保留 Firebase 性能库和 Espresso Instrumented 测试?

Ami*_*bdi 5

在我的情况下,它似乎是由protobuf-lite:3.0.1最近更新的依赖引起的androidTestImplementation 'androidx.test.espresso:espresso-contrib:3.4.0',我可以用这个排除来修复

androidTestImplementation (androidx.test.espresso:espresso-contrib:3.4.0'){
    exclude module: "protobuf-lite"
}
Run Code Online (Sandbox Code Playgroud)

KTX的情况

testImplementation('androidx.test.espresso:espresso-contrib:3.4.0') {
        exclude(module = "protobuf-lite")
    }
Run Code Online (Sandbox Code Playgroud)

  • 有关此问题的更多信息,您可以在 https://github.com/android/android-test/issues/999 查看 (3认同)