How do you tell systemd/sysv that your daemon is now ready to accept connections? How do you log to syslog?
In java there's no equivalent to daemon() (unless you go out of your way to call the libc) and java doesn't support SOCK_DGRAM for unix sockets, so no syslog either.
.net seems to have the same issues.
"everything just works" is true only for a very very narrow definition of "everything" which leaves out "daemon that works decently"
If you are a Java shop everything just works so why touch it?