Use Firebase (Realtime Database) in a Paper plugin

Discussion in 'Plugin Development' started by Der_anonyme_Gamer, Apr 26, 2023.

Thread Status:
Not open for further replies.
  1. Hello,
    sorry for my bad englisch.
    I want to use Firebase Realtime Database in my plugin.
    I have imported Firebase-Admin:
    Code:
     <dependency>
                <groupId>com.google.firebase</groupId>
                <artifactId>firebase-admin</artifactId>
                <version>9.1.1</version>
            </dependency>
    Then I built the project and I saw warnings:
    Code:
    [WARNING] animal-sniffer-annotations-1.22.jar, annotations-4.1.1.4.jar, api-common-2.2.1.jar, auto-value-annotations-1.9.jar, checker-qual-3.21.0.jar, commons-codec-1.15.jar, commons-logging-1.2.jar, conscrypt-openjdk-uber-2.5.2.jar, error_prone_annotations-2.16.jar, failureaccess-1.0.1.jar, firebase-admin-9.1.1.jar, gapic-google-cloud-storage-v2-2.14.0-alpha.jar, gax-2.19.4.jar, gax-grpc-2.19.4.jar, gax-httpjson-0.104.4.jar, google-api-client-2.0.0.jar, google-api-client-gson-2.0.0.jar, google-api-services-storage-v1-rev20220705-2.0.0.jar, google-auth-library-credentials-1.12.1.jar, google-auth-library-oauth2-http-1.12.1.jar, google-cloud-core-2.8.22.jar, google-cloud-core-grpc-2.8.22.jar, google-cloud-core-http-2.8.22.jar, google-cloud-firestore-3.7.0.jar, google-cloud-storage-2.14.0.jar, google-http-client-1.42.2.jar, google-http-client-apache-v2-1.42.1.jar, google-http-client-appengine-1.42.2.jar, google-http-client-gson-1.42.1.jar, google-http-client-jackson2-1.42.2.jar, google-oauth-client-1.34.1.jar, grpc-alts-1.50.1.jar, grpc-api-1.50.1.jar, grpc-auth-1.50.1.jar, grpc-context-1.50.1.jar, grpc-core-1.50.1.jar, grpc-google-cloud-storage-v2-2.14.0-alpha.jar, grpc-google-iam-v1-1.6.4.jar, grpc-googleapis-1.50.1.jar, grpc-grpclb-1.50.1.jar, grpc-netty-shaded-1.50.1.jar, grpc-protobuf-1.50.1.jar, grpc-protobuf-lite-1.50.1.jar, grpc-services-1.50.1.jar, grpc-stub-1.50.1.jar, grpc-xds-1.50.1.jar, gson-2.10.jar, guava-31.1-jre.jar, httpclient-4.5.13.jar, httpcore-4.4.15.jar, j2objc-annotations-1.3.jar, jackson-core-2.13.4.jar, javax.annotation-api-1.3.2.jar, jsr305-3.0.2.jar, listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar, netty-buffer-4.1.84.Final.jar, netty-codec-4.1.84.Final.jar, netty-codec-http-4.1.84.Final.jar, netty-common-4.1.84.Final.jar, netty-handler-4.1.84.Final.jar, netty-resolver-4.1.84.Final.jar, netty-transport-4.1.84.Final.jar, netty-transport-native-unix-common-4.1.84.Final.jar, opencensus-api-0.31.1.jar, opencensus-contrib-grpc-util-0.31.1.jar, opencensus-contrib-http-util-0.31.1.jar, opencensus-proto-0.2.0.jar, perfmark-api-0.25.0.jar, proto-google-cloud-firestore-bundle-v1-3.7.0.jar, proto-google-cloud-firestore-v1-3.7.0.jar, proto-google-cloud-storage-v2-2.14.0-alpha.jar, proto-google-common-protos-2.9.6.jar, proto-google-iam-v1-1.6.4.jar, protobuf-java-3.21.8.jar, protobuf-java-util-3.21.8.jar, re2j-1.6.jar, slf4j-api-2.0.3.jar, testforyt-1.0.jar, threetenbp-1.6.3.jar define 1 overlapping resource: 
    [WARNING]   - META-INF/MANIFEST.MF
    [WARNING] httpclient-4.5.13.jar, httpcore-4.4.15.jar define 1 overlapping resource: 
    [WARNING]   - META-INF/DEPENDENCIES
    [WARNING] httpclient-4.5.13.jar, httpcore-4.4.15.jar, jackson-core-2.13.4.jar define 2 overlapping resources: 
    [WARNING]   - META-INF/LICENSE
    [WARNING]   - META-INF/NOTICE
    [WARNING] checker-qual-3.21.0.jar, commons-codec-1.15.jar, commons-logging-1.2.jar, grpc-netty-shaded-1.50.1.jar, javax.annotation-api-1.3.2.jar, threetenbp-1.6.3.jar define 1 overlapping resource: 
    [WARNING]   - META-INF/LICENSE.txt
    [WARNING] grpc-core-1.50.1.jar, grpc-grpclb-1.50.1.jar, grpc-services-1.50.1.jar, grpc-xds-1.50.1.jar define 1 overlapping resource: 
    [WARNING]   - META-INF/services/io.grpc.LoadBalancerProvider
    [WARNING] grpc-core-1.50.1.jar, grpc-googleapis-1.50.1.jar, grpc-grpclb-1.50.1.jar, grpc-netty-shaded-1.50.1.jar, grpc-xds-1.50.1.jar define 1 overlapping resource: 
    [WARNING]   - META-INF/services/io.grpc.NameResolverProvider
    [WARNING] gson-2.10.jar, jackson-core-2.13.4.jar, slf4j-api-2.0.3.jar define 1 overlapping classes: 
    [WARNING]   - META-INF.versions.9.module-info
    [WARNING] commons-codec-1.15.jar, commons-logging-1.2.jar, grpc-netty-shaded-1.50.1.jar define 1 overlapping resource: 
    [WARNING]   - META-INF/NOTICE.txt
    [WARNING] grpc-netty-shaded-1.50.1.jar, netty-buffer-4.1.84.Final.jar, netty-codec-4.1.84.Final.jar, netty-codec-http-4.1.84.Final.jar, netty-common-4.1.84.Final.jar, netty-handler-4.1.84.Final.jar, netty-resolver-4.1.84.Final.jar, netty-transport-4.1.84.Final.jar, netty-transport-native-unix-common-4.1.84.Final.jar define 1 overlapping resource: 
    [WARNING]   - META-INF/io.netty.versions.properties
    [WARNING] grpc-netty-shaded-1.50.1.jar, netty-common-4.1.84.Final.jar define 1 overlapping resource: 
    [WARNING]   - META-INF/services/reactor.blockhound.integration.BlockHoundIntegration
    [WARNING] maven-shade-plugin has detected that some class files are
    [WARNING] present in two or more JARs. When this happens, only one
    [WARNING] single version of the class is copied to the uber jar.
    [WARNING] Usually this is not harmful and you can skip these warnings,
    [WARNING] otherwise try to manually exclude artifacts based on
    [WARNING] mvn dependency:tree -Ddetail=true and the above output.
    [WARNING] See [URL]http://maven.apache.org/plugins/maven-shade-plugin/[/URL]

    After this, I uploaded the plugin to my server and ran it, but it canĀ“t be enabled:
    Code:
    ERROR: [io.papermc.paper.plugin.provider.source.DirectoryProviderSource] Error loading plugin: File 'plugins\test.jar' failed to load!
    java.lang.RuntimeException: File 'plugins\test.jar' failed to load!
            at io.papermc.paper.plugin.provider.source.FileProviderSource.registerProviders(FileProviderSource.java:59) ~[paper-1.19.3.jar:git-Paper-445]
            at io.papermc.paper.plugin.provider.source.DirectoryProviderSource.lambda$registerProviders$2(DirectoryProviderSource.java:32) ~[paper-1.19.3.jar:git-Paper-445]
            at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183) ~[?:?]
            at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179) ~[?:?]
            at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) ~[?:?]
            at java.util.Iterator.forEachRemaining(Iterator.java:133) ~[?:?]
            at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1845) ~[?:?]
            at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) ~[?:?]
            at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[?:?]
            at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150) ~[?:?]
            at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173) ~[?:?]
            at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?]
            at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) ~[?:?]
            at io.papermc.paper.plugin.provider.source.DirectoryProviderSource.registerProviders(DirectoryProviderSource.java:30) ~[paper-1.19.3.jar:git-Paper-445]
            at io.papermc.paper.plugin.provider.source.DirectoryProviderSource.registerProviders(DirectoryProviderSource.java:14) ~[paper-1.19.3.jar:git-Paper-445]
            at io.papermc.paper.plugin.util.EntrypointUtil.registerProvidersFromSource(EntrypointUtil.java:14) ~[paper-1.19.3.jar:git-Paper-445]
            at io.papermc.paper.plugin.PluginInitializerManager.load(PluginInitializerManager.java:100) ~[paper-1.19.3.jar:git-Paper-445]
            at io.papermc.paper.plugin.PluginInitializerManager.reload(PluginInitializerManager.java:112) ~[paper-1.19.3.jar:git-Paper-445]
            at org.bukkit.craftbukkit.v1_19_R2.CraftServer.reload(CraftServer.java:1018) ~[paper-1.19.3.jar:git-Paper-445]
            at org.bukkit.Bukkit.reload(Bukkit.java:930) ~[paper-api-1.19.3-R0.1-SNAPSHOT.jar:?]
            at org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:54) ~[paper-api-1.19.3-R0.1-SNAPSHOT.jar:?]
            at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:155) ~[paper-api-1.19.3-R0.1-SNAPSHOT.jar:?]
            at org.bukkit.craftbukkit.v1_19_R2.CraftServer.dispatchCommand(CraftServer.java:911) ~[paper-1.19.3.jar:git-Paper-445]
            at org.bukkit.craftbukkit.v1_19_R2.CraftServer.dispatchServerCommand(CraftServer.java:874) ~[paper-1.19.3.jar:git-Paper-445]
            at net.minecraft.server.dedicated.DedicatedServer.handleConsoleInputs(DedicatedServer.java:501) ~[paper-1.19.3.jar:git-Paper-445]
            at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:448) ~[paper-1.19.3.jar:git-Paper-445]
            at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1397) ~[paper-1.19.3.jar:git-Paper-445]
            at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1173) ~[paper-1.19.3.jar:git-Paper-445]
            at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:316) ~[paper-1.19.3.jar:git-Paper-445]
            at java.lang.Thread.run(Thread.java:833) ~[?:?]
    Caused by: java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
            at sun.security.util.SignatureFileVerifier.processImpl(SignatureFileVerifier.java:340) ~[?:?]
            at sun.security.util.SignatureFileVerifier.process(SignatureFileVerifier.java:282) ~[?:?]
            at java.util.jar.JarVerifier.processEntry(JarVerifier.java:321) ~[?:?]
            at java.util.jar.JarVerifier.update(JarVerifier.java:234) ~[?:?]
            at java.util.jar.JarFile.initializeVerifier(JarFile.java:762) ~[?:?]
            at java.util.jar.JarFile.getInputStream(JarFile.java:845) ~[?:?]
            at io.papermc.paper.plugin.provider.type.spigot.SpigotPluginProviderFactory.create(SpigotPluginProviderFactory.java:36) ~[paper-1.19.3.jar:git-Paper-445]
            at io.papermc.paper.plugin.provider.type.spigot.SpigotPluginProviderFactory.create(SpigotPluginProviderFactory.java:16) ~[paper-1.19.3.jar:git-Paper-445]
            at io.papermc.paper.plugin.provider.type.PluginFileType.getConfig(PluginFileType.java:73) ~[paper-1.19.3.jar:git-Paper-445]
            at io.papermc.paper.plugin.provider.type.PluginFileType.register(PluginFileType.java:66) ~[paper-1.19.3.jar:git-Paper-445]
            at io.papermc.paper.plugin.provider.source.FileProviderSource.registerProviders(FileProviderSource.java:57) ~[paper-1.19.3.jar:git-Paper-445]
            ... 29 more

    I hope, someone can help me make it runnable
     
    Last edited by a moderator: Apr 27, 2023
Thread Status:
Not open for further replies.

Share This Page