Thank you for your help it’s resolved.
SpongePowered depends on Guava 21.0, and grpc on Guava 19.0, at some point between these major(*) releases, the signature of
directExecutor may have changed, you can fork grpc and update it yourself. If the guava had not loaded in JVM, a NoClassDefFoundError would have thrown, not NoSuchMethodError.
#edit1: No, shadow will not solve your problem, classes of Guava 21.0 will be loaded before the class of your plugin.
#edit2: I was so bored then I investigated the problem: You are using Sponge 5, which depends on
Guava 17, the
directExecutor was added in
Guava 18, so when your plugin loads, it tries to load a method which does not exists. Shadow may* solve your problem, but only if no other class loads the
MoreExecutors class before your plugin is added to classpath, but is not the best way to solve the problem, and is not guaranteed,
Guava 21 was added as dependency only in Sponge
bleeding(API 7), because Minecraft updated their dependencies. You should downgrad the grpc to a version that does not uses Guava 18+, or fork and downgrade it, or use Sponge API 7.