GeneratedMessageV3#isStringEmpty(Object) method not found

18 views
Skip to first unread message

João Victor Gomides Cruz

unread,
Jan 11, 2022, 8:41:29 AMJan 11
to Protocol Buffers
Hi guys I'm having an issue with protobuf java. can I get some help on where to start fixing it?

I'm getting this error 
java.lang.NoSuchMethodError: 'boolean com.google.protobuf.GeneratedMessageV3.isStringEmpty(java.lang.Object)'
        at is.warden.protocol.service.proto.ProxyRegisterRequest.getSerializedSize(ProxyRegisterRequest.java:250) ~[?:?]
        at io.grpc.protobuf.lite.ProtoInputStream.available(ProtoInputStream.java:108) ~[?:?]
        at io.grpc.internal.MessageFramer.getKnownLength(MessageFramer.java:205) ~[?:?]
        at io.grpc.internal.MessageFramer.writePayload(MessageFramer.java:137) ~[?:?]
        at io.grpc.internal.AbstractStream.writeMessage(AbstractStream.java:65) ~[?:?]
        at io.grpc.internal.ForwardingClientStream.writeMessage(ForwardingClientStream.java:37) ~[?:?]
        at io.grpc.internal.DelayedStream$6.run(DelayedStream.java:283) ~[?:?]
        at io.grpc.internal.DelayedStream.drainPendingCalls(DelayedStream.java:182) ~[?:?]
        at io.grpc.internal.DelayedStream.access$100(DelayedStream.java:44) ~[?:?]
        at io.grpc.internal.DelayedStream$4.run(DelayedStream.java:148) ~[?:?]
        at io.grpc.stub.ClientCalls$ThreadlessExecutor.waitAndDrain(ClientCalls.java:741) ~[?:?]
        at io.grpc.stub.ClientCalls.blockingUnaryCall(ClientCalls.java:149) ~[?:?]
        at is.warden.protocol.service.proto.ProxyServiceGrpc$ProxyServiceBlockingStub.register(ProxyServiceGrpc.java:475) ~[?:?]
        at is.warden.protocol.service.client.proxy.ProxyServiceClient.register(ProxyServiceClient.java:22) ~[?:?]
        at is.warden.protocolplugin.proxy.ProxyProtocolPlugin.registerProxy(ProxyProtocolPlugin.java:56) ~[?:?]
        at is.warden.protocolplugin.proxy.ProxyProtocolPlugin.onEnable(ProxyProtocolPlugin.java:29) ~[?:?]
        at net.md_5.bungee.api.plugin.PluginManager.enablePlugins(PluginManager.java:315) ~[waterfall.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:adabf32:474]
        at net.md_5.bungee.BungeeCord.start(BungeeCord.java:290) ~[waterfall.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:adabf32:474]
        at net.md_5.bungee.BungeeCordLauncher.main(BungeeCordLauncher.java:67) ~[waterfall.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:adabf32:474]
        at net.md_5.bungee.Bootstrap.main(Bootstrap.java:15) ~[waterfall.jar:git:Waterfall-Bootstrap:1.18-R0.1-SNAPSHOT:adabf32:474]

with this grpc dependencies
implementation("io.grpc:grpc-protobuf:1.43.2")
implementation("io.grpc:grpc-stub:1.43.2")
implementation("io.grpc:grpc-netty:1.43.2")

implementation("com.google.protobuf:protobuf-java:3.19.2")
implementation("com.google.protobuf:protobuf-java-util:3.19.2")

I even decompiled the final jar and the method does exist, I don't know where to even start looking.

Thanks in advance :)

Adam Cozzette

unread,
Jan 14, 2022, 2:20:58 PMJan 14
to João Victor Gomides Cruz, Protocol Buffers
This indicates that somehow the project is using Java generated code that is too new for the protobuf runtime. GeneratedMessageV3.isStringEmpty was added relatively recently, so if the runtime library is too old then it won't be present. Version 3.19.2 is quite recent, so that should be fine, but the fact that you're getting the error anyway suggests to me that there must be an old runtime being used somewhere.

--
You received this message because you are subscribed to the Google Groups "Protocol Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to protobuf+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/protobuf/dba2e5e0-110c-4df9-a29f-90a6b7852857n%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages