java bonjour zeroconf

¿Hay alguna otra biblioteca de Java para bonjour/zeroconf aparte de JMDNS?



(9)

A menos que su objetivo sea anunciar la disponibilidad del servicio a otras aplicaciones compatibles con mDNS o consumir servicios mDNS de otras aplicaciones, podría tener más sentido implementar su propio descubrimiento de servicios basado en la difusión.

¿Hay alguna otra biblioteca de Java para bonjour / zeroconf aparte de JMDNS?


He encontrado más fácil crear mi propia implementación (después de la experiencia con WS-Discovery y Bonjour para casos multiplataforma) https://github.com/4ntoine/ServiceDiscovery-java . Tiene tanto Java como iOS impl tanto para el cliente como para el servidor.


He estado trabajando en una implementación simple y pura de Java de mDNS Service Discovery. Por el momento, solo se admite la navegación sincrónica, pero planeo agregar un oyente asincrónico en la próxima versión. Es software gratuito y está disponible en GitHub en https://github.com/fflewddur/hola .

Los únicos requisitos son Java 8 y tener el slf4j-api disponible en su ruta de clase.



Pruebe en:

DNS-SD

- Las mismas API Java DNS-SD también están disponibles en Bonjour para Windows, Bonjour para Linux, Solaris, * BSD, etc., lo que permite que el software Java haga uso del descubrimiento del servicio DNS de Zeroconf en una amplia gama de plataformas, no solo en Mac OS X ......


También siento curiosidad por encontrar la mejor biblioteca multiplataforma DNS-SD (Zeroconf, Bonjour, DNS self discovery) que existe.

Suena como el DNS-SD de Apple. Dnssd.jar es la biblioteca "oficial" de Java que requiere soporte de biblioteca nativa en Windows, Linux, etc., pero funciona de fábrica en Mac OSX.

Existen otras implementaciones de DNS-SD de Java puro, pero no está claro si alguno de ellos ofrece una biblioteca que sea tan fácil de usar o esté totalmente probada como DNS-SD (algunos de los proyectos parecen estar abandonados durante 2 años).

  1. Biblioteca oficial de DNS-SD mDNSResponder de Apple
  2. Integración de mDNSResponder y jmDNS : se ha trabajado para crear una biblioteca que proporcione una interfaz DNS-SD común para jmDNS y la implementación de mDNSResponder de Apple. Instrucciones para usar el envoltorio jmDNS .
  3. waiter : se describe como una "biblioteca DNS moderna y una efectiva biblioteca DNS-SD (Service Discovery)". Utiliza la red java NIO.
  4. jmDNS : JmDNS proporciona una implementación de mDNS puramente Java fácil de usar que se ejecuta en JDK 1.4 y superior
  5. JiveDNS - "JiveDNS es una bifurcación de la difunta biblioteca JmDNS, utilizada para el descubrimiento y registro de servicios DNS de multidifusión". (en sí mismo no ha visto una actualización de SVN en más de 2 años)

Waiter parece ser una biblioteca pura de Java para DNS-SD. Está disponible aquí:

waiter


dns_sd.jar en Windows funciona bien, descárguelo de Apple (SDK para Windows). Tenga cuidado con las reinstalaciones de Bonjour porque tienden a sobrescribir el directorio Program Files / Bonjour que contiene el dns_sd.jar. La superficie aerodinámica de Rogue Amoeba es un ejemplo de esto, sin embargo, afirman que usan el instalador original de Apple.

dnssd.jar en OSX funciona bien, pero ya no está incluido en las últimas versiones de Java ya que Oracle se ha hecho cargo de la responsabilidad. Sin embargo, el archivo todavía está en el disco ya que el 1.6 Java de Apple está en el disco. Simplemente encuentre el archivo y muévalo a la carpeta / externals en su última versión de Java. Por lo tanto, es bastante gracioso-idiota que Apple proporcione un SDK que funcione bien para la implementación de Windows de Java DNS SD, sin ofrecer nada en absoluto para su propio OSX. Anticipo que esto es simplemente el resultado de odiar demasiado a Java en Apple?

Pero, ¿alguien sabe de una implementación de Java del protocolo de Airtunes; ¿la última versión utilizada en Airport Express y Apple TV de hoy, NO es la misma versión que se utilizó en los modelos anteriores de Airport Express?

Sé de qTunes, pero no funciona con las últimas versiones de Airtunes. (Podría hacerlo funcionar con los altavoces Airfoil de Rogue Amoeba para Mac OS X)

No estoy monitoreando este hilo, pero puede contactarse en [email protected] para preguntas prácticas.


mdnsjava es un proyecto que proporciona compatibilidad mDNS y DNS-SD para dnsjava (dnsjava.org). A diferencia de muchas de las implementaciones java de DNS-SD, mdnsjava es compatible con la resolución RR RRD mDNS completa, no solo con la resolución de los servicios.

https://code.google.com/p/mdnsjava/