Problem
I'm trying to get started with network service discovery for my Java client/server application -- basically, I just want the client to find the server on the same ethernet segment without configuration. I'd like to provide for the future where there are clients are on other platforms. Probably just NETCF and Android. This shouldn't be rocket surgery.
Options
A couple hours of browsing through the options listed here seems to indicate that mdnsjava is the best option at present. I've posted a bit of my research below, but I'm restricted to two links at my current reputation.
I got the Jmdns examples to compile, register, and browse without too much grief... but it simply didn't work reliably. The browser returned IP addresses on the 255.255.254 subnet, on those occasions where it found the service at all.
Mdnsjava gets better reviews, but I've failed utterly to make it run. The examples I've found are code snippets that don't stand on their own, and the javadocs aren't really documentation -- they're just lists of public methods with unnamed (but mandatory) arguments.
Avahi4j has been stuck at v0.1 since 2009. Didn't spend any time on it.
Bonjour apparently requires system libraries on non-Apple platforms.
Upnp, which I admittedly know nothing about, looks like it will take a huge amount of infrastructure to provide my minimal requirement.
Question
Does there exist a compilable, working example of registering a service with mdnsjava? I'm prepared to be told to investigate another library if that's my best course of action in 2015.