The idea is that I can launch modules separately and they can communicate with each other through an httpClient. OR I can launch modules together and they should be able to communicate directly with each other. I have already achieved this by using separate sourcesets and using a sniff of reflection on application start, but I think it is not sexy enough.