gradle - Firebase admin sdk 对 gradle 的依赖导致启动层错误

标签 gradle firebase-admin

我正在尝试使用 javafx 构建一个桌面应用程序,用于从 pdf 中提取数据并将内容保存为 firebase 中的 json。在 gradle 上添加 firebase admin sdk 依赖会导致构建错误。但它正在使用 Maven 项目。

我已经使用本指南创建了 gradle 项目 - https://openjfx.io/openjfx-docs/#IDE-Intellij对于firebase admin sdk,我遵​​循了官方文档。但它不断创建ResolutionException并提到一些模块。为这些模块添加依赖项或jar会导致更多模块异常。我试图避免使用 maven,因为它会导致与 javafx 发生一些我也无法解决的冲突。

这是我当前的 build.gradle 文件:

plugins {
    id 'application'
    id 'org.openjfx.javafxplugin' version '0.0.5'
}

group 'com.tiptoptips'
version '1.0-SNAPSHOT'

sourceCompatibility = 1.8

repositories {
    mavenCentral()
    maven { url 'https://jitpack.io' }
}

dependencies {
    implementation 'com.google.firebase:firebase-admin:6.7.0'
}

javafx {
    modules = [ 'javafx.controls', 'javafx.fxml' ]
}

mainClassName = 'com.tiptoptips.MainApp'

这是我在运行或构建这个项目时遇到的错误-
> Task :run FAILED
Error occurred during initialization of boot layer
java.lang.module.ResolutionException: Modules proto.google.common.protos 
and gax.grpc export package com.google.longrunning to module 
javafx.graphicsEmpty

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':run'.
> Process 'command '/usr/lib/jvm/java-11-openjdk-amd64/bin/java'' finished with non-zero exit value 1

有什么我做错了吗?

最佳答案

经过大约4天的研究,我找到了解决它的方法。我必须手动下载 javafx-11 库并使用 vm 选项将其添加到项目中。我不得不手动添加 javafx.controls 和 javafx.fxml。然后将firebase admin sdk重新添加到gradle中工作正常。我仍然不明白为什么 intellij 显示 firebase is missing module 而不是查找 javafx 文件。完整的详细信息可以在这里找到- https://openjfx.io/openjfx-docs/#install-javafx

关于gradle - Firebase admin sdk 对 gradle 的依赖导致启动层错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54180550/

相关文章:

android - 我可以在我发布的 aar 库中包含一个本地模块吗?

javascript - Firebase 管理 SDK FCM 错误 需要主题、 token 或条件之一

node.js - 从 Firebase VerifyToken 获取用户显示名称

javascript - 云函数错误: Converting circular structure to JSON

node.js - 使用node.js管理sdk使用特定参数列出firebase身份验证用户

android - 不同的 flavor 依赖

unit-testing - 测试 java 函数中抛出的异常,以便在 spock 单元测试中捕获

Jenkins 服务调用失败 > 服务器错误?

gradle - Spring-boot 依赖项不适用于 gradle

javascript - 如何从云函数中止创建到 firebase 实时数据库?