任务 ':react-native-firebase:compileDebugJavaWithJavac' 执行失败

Tan*_*ker 5 react-native react-native-firebase

在我的 React Native0.60.4应用程序中,我正在尝试使用react-native-firebase并且我已经完成了所有操作,除非react-native-link最新版本的 React Native 不支持它。当我发出命令时react-native-run-android,它显示了来自react-native-firebase. 我猜这是由于某些版本冲突而发生的。这是长错误:

在此处输入图片说明

这是我的应用程序构建/gradle 文件依赖项:

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'
Run Code Online (Sandbox Code Playgroud)

而我的 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 Code Online (Sandbox Code Playgroud)

Man*_*wis 12

运行 npx jetify

从项目根目录,node_modules 所在的位置

  • 这实际上不是解决办法,必须从头开始并进行测试,但无论如何都需要这个命令。 (2认同)

小智 7

只需重新安装React Native Firebase

npm install --save @react-native-firebase/app
Run Code Online (Sandbox Code Playgroud)

在此之后它 100% 有效。


小智 -2

我认为你需要链接react-native-firebase库。另外,您可以在此处参考 firebase 的文档https://github.com/invertase/react-native-firebase/tree/master/packages/firestorehttps://rnfirebase.io/docs/v5.xx/getting-开始了