Well, the serializer is locked on purpose when the server starts so that you don’t accidentally add classes after the serializer list has been compiled.
…but I stupidly didn’t take into account the case where a client and server run together. But really, Serializer isn’t smart here either as there is no reason to register the same classes twice. I should probably just modify the Serializer to see if the class is already registered before checking the read-only lock.
In the mean time, you can work around this bug by disabling that service. Most people are probably already registering their own classes anyway. (Though the default services I wrote all expect the client to automatically get message classes registered… that’s another story that shouldn’t affect you.)
Removing it on the server alone might be enough. Something like:
server.getServices().removeService(server.getServices().getService(ServerSerializerRegistrationsService.class));
…before you start the server.