简体   繁体   中英

Execution failed for task ':react-native-firebase:compileDebugJavaWithJavac'

In my React Native 0.60.4 app i'm trying to use react-native-firebase and i have done everything except react-native-link as it's not supported in the latest version of React Native. When i give command react-native-run-android ,it shows a lot of errors from the node module of react-native-firebase . I'm guessing it's happening for some version conflict. Here is the long error:

在此处输入图像描述

Here's my app build.gradle file dependencies:

 dependencies { implementation fileTree(dir: "libs", include: ["*.jar"]) implementation "com.facebook.react:react-native:+" implementation "com.google.firebase:firebase-core:16.0.9" implementation "com.google.firebase:firebase-firestore:19.0.0" implementation "com.google.firebase:firebase-messaging:18.0.0" // implementation "com.google.firebase:firebase-functions: 17.0.0" // implementation "com.google.firebase:firebase-analytics: 16.5.0" // implementation " com.google.firebase:firebase-ads:17.2.1" // implementation "com.google.android.gms:play-services-measurement-api:16.5.0" // implementation "com.google.firebase:firebase-invites:17.0.0" // implementation "com.google.firebase:firebase-iid: 18.0.0" // implementation "com.google.firebase:firebase-config:17.0.0" // implementation "com.google.firebase:firebase-perf:17.0.0" // Firebase dependencies implementation "com.google.android.gms:play-services-base:16.1.0" implementation"com.google.android.gms:play-services-gcm:16.1.0" implementation 'com.android.support:multidex:1.0.3' if (enableHermes) { def hermesPath = "../../node_modules/hermesvm/android/"; debugImplementation files(hermesPath + "hermes-debug.aar") releaseImplementation files(hermesPath + "hermes-release.aar") } else { implementation jscFlavor } } task copyDownloadableDepsToLibs(type: Copy) { from configurations.compile into 'libs' } apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project) apply from: "../../node_modules/react-native-vector-icons/fonts.gradle" apply plugin: 'com.google.gms.google-services'

And my android build.gradle:

 buildscript { ext { buildToolsVersion = "28.0.3" minSdkVersion = 21 compileSdkVersion = 28 targetSdkVersion = 28 supportLibVersion = "28.0.0" googlePlayServicesVersion = "16.1.0" multiDexEnabled = true } repositories { google() jcenter() } dependencies { classpath('com.android.tools.build.gradle:3.4.2') classpath( 'com.google.gms:google-services:4.2.0') } } allprojects { repositories { google() mavenLocal() jcenter() maven { url("$rootDir/../node_modules/react-native/android") } maven { url("$rootDir/../node_modules/jsc-android/dist") } } }

Run npx jetify

From the project root directory, where the node_modules is

Simply Reinstall React Native Firebase

npm install --save @react-native-firebase/app

After this its 100% works.

I have just faced this issue as well. Upgrading openjdk from 8 to 11 will get error away.

This script is to install openjdk 11: https://github.com/invertase/react-native-firebase/issues/1988#issuecomment-1070831039 .

You have update your openjdk with this:

brew tap homebrew/cask-versions
brew install --cask zulu11

For me, the issue was the difference in the versions of @react-native-firebase/app and @react-native-firebase/firestore so reinstalling the libraries updated both of them to the latest version, and the issue was resolved

yarn add @react-native-firebase/app @react-native-firebase/firestore
OR 
npm install @react-native-firebase/app @react-native-firebase/firestore

Even though it says that there is a problem in firebase here, but updating the JDK to JDK 11, resolves this issue.

Do use SDK man to manage different Java versions on the same machine.

I think you need to link react-native-firebase library. Also, you can refer the documentation for firebase here https://github.com/invertase/react-native-firebase/tree/master/packages/firestore or https://rnfirebase.io/docs/v5.xx/getting-started

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM