It indeed seems strange that such a compile error would not show up locally. If you do a fresh checkout of your project and redeploy locally, does it still work?
As for the compile errors: the first one is telling you that either you need to instantiate ProviderManager first before you can call addExtensionProvider on it, or you need to declare the addExtensionProvider method static
.
The second and third one are telling you that an @Override
annotation shouldn't be used when you are not actually overriding/implementing methods from an interface or superclass of LoggingConnectionListener.
A while ago I notice a difference in the class/library loading between eclipse and the modeler. It would be possible that there is also a small difference with our cloud environment.
The difference I noticed was the order in which libraries where included in the classpath. Normally this doesn't give any issues. At least not if every class only exists once in your project.
But if you would have multiple versions of you ProviderManager class in the userlib folder, 1 version has this method declared as static, the second has the method defined as non-static.
Depending on the order in which the libraries are included in the classpath it uses one of the two libraries. I noticed in eclipse that the order of libraries is alphabetic.
I would recommend trying to find which class you are using, through eclipse you should be able to find the library that is referenced there. If you would remove that library, eclipse would probably start using the other library. At least that gives you insight in the libraries, after that you can make the decision if you could remove one of the libraries or experiment with the lib names to see if that makes a difference.