除了 JMDNS 之外,还有其他用于 bonjour/zeroconf 的 Java 库吗?
除了 JMDNS 之外,还有其他用于 bonjour/zeroconf 的 Java 库吗?
Are there any other Java libraries for bonjour/zeroconf apart from JMDNS?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
我也很好奇找到最好的跨平台 DNS-SD(Zeroconf、Bonjour、DNS 自我发现)库。
听起来确实像 Apple 的 DNS-SD dnssd.jar 是“官方” Java 库需要 Windows、Linux 等上的本机库支持,但在 Mac OSX 上可以开箱即用。
还有其他纯 Java DNS-SD 实现,但尚不清楚其中是否有任何提供像 DNS-SD 一样易于使用或经过全面测试的库(其中一些项目似乎已被放弃 2 年)。
库
整合 - 有一些
努力创建一个图书馆
提供通用的DNS-SD接口
jmDNS 和 Apple 的 mDNSResponder
执行。 使用说明
jmDNS 包装器。
DNS 库和有效的 DNS-SD
(服务发现)库。”
利用 java NIO 网络。
易于使用的纯 Java mDNS
在 JDK 1.4 上运行的实现
及更高版本
已失效的 JmDNS 库,用于
组播 DNS 服务发现和
注册。”(它本身没有
SVN 更新已超过 2 年)
I'm also curious to find the best cross-platform DNS-SD (Zeroconf, Bonjour, DNS self discovery) library exists out there.
It does sound like Apple's DNS-SD dnssd.jar is the "official" Java library that requires native library support on Windows, Linux, etc, but works out of the box on Mac OSX.
There are other pure Java DNS-SD implementations, but it's unclear if any of them offer a library that is as easy to use or fully tested as DNS-SD (some of the projects appear to be abandoned for 2 years).
library
integration - There's been some
work to create a library that
provides a common DNS-SD interface
to jmDNS and Apple's mDNSResponder
implementation. Instructions to use
the jmDNS wrapper.
DNS library and an effective DNS-SD
(Service Discovery) library." It
utilizes java NIO networking.
easy-to-use pure-Java mDNS
implementation that runs on JDK 1.4
and higher
the defunct JmDNS library, used for
multicast DNS service discovery and
registration." (it itself has not
seen an SVN update in over 2 years)
尝试:
DNS-SD
-- 相同的 Java DNS-SD API 还可以在 Bonjour for Windows、Bonjour for Linux、Solaris、*BSD 等中使用,使 Java 软件能够在各种平台上使用 Zeroconf 的 DNS 服务发现,而不仅仅是在 Mac OS X 上...... 。
Try at:
DNS-SD
-- The same Java DNS-SD APIs are also available in Bonjour for Windows, Bonjour for Linux, Solaris, *BSD, etc., enabling Java software to make use of Zeroconf's DNS Service Discovery across a wide range of platforms, not just on Mac OS X ......
mdnsjava 是一个为 dnsjava (dnsjava.org) 提供 mDNS 和 DNS-SD 支持的项目。
与许多 DNS-SD java 实现不同,mdnsjava 支持完整的 mDNS DNS RR 解析,而不仅仅是服务解析。
https://code.google.com/p/mdnsjava/
mdnsjava is a project that provides mDNS and DNS-SD support for dnsjava (dnsjava.org).
Unlike many of the DNS-SD java implementations mdnsjava supports full mDNS DNS RR resolution, not just the resolution of services.
https://code.google.com/p/mdnsjava/
Windows 上的 dns_sd.jar 工作正常,从 Apple 下载(适用于 Windows 的 SDK)。 请注意重新安装 Bonjour,因为它们往往会覆盖包含 dns_sd.jar 的 Program Files/Bonjour 目录。 Rogue Amoeba 的 Airfoil 就是一个例子,但他们声称使用 Apple 原始安装程序。
dnssd.jar 在 OSX 上工作正常,但由于 Oracle 接管了责任,因此不再包含在最新的 Java 版本中。 然而,该文件仍然在磁盘上,因为Apple的1.6 Java在磁盘上。 只需找到该文件并将其移至最新 Java 中的 /externals 文件夹即可。 因此,Apple 为 Java DNS SD 的 Windows 实现提供了一个功能良好的 SDK,但却没有为自己的 OSX 提供任何东西,这是非常有趣和愚蠢的。 我猜这只是苹果公司太讨厌 Java 的结果?
但是,有谁知道airtunes 协议的Java 实现吗? 当今机场快线和 Apple TV 中使用的最新版本与早期机场快线型号中使用的版本不同?
我知道 qTunes,但它不适用于最新的 Airtunes 版本。 (我可以让它与适用于 Mac OS X 的 Rogue Amoeba 的 Airfoil 扬声器配合使用)
我没有监控此线程,但可以通过 [电子邮件受保护] 了解实际问题。
dns_sd.jar on windows works fine, download from Apple (SDK for windows). Beware of reinstallations of Bonjour because they tend to overwrite the Program Files/Bonjour directory containing the dns_sd.jar. Airfoil from Rogue Amoeba is one example on this, however they claim to use the Apple original installer.
dnssd.jar on OSX works fine, but is no longer included in the latest Java releases as Oracle has taken over responsibility. However, the file is still on the disk since the 1.6 Java of Apple is on the disk. Just find the file and move it to /externals folder in your latest Java. So it is quite funny-idiotic that Apple provides a well functioning SDK for Windows implementation of Java DNS SD, while not offering anything at all for their own OSX. I anticipate that this is simply the result of hating Java too much over at Apple?
But, does anyone know of a Java implementation of the airtunes protocol; the latest version used in today´s Airport Express and Apple TV, being NOT the same version as used in earlier models of Airport Express ?
I know of qTunes, but it does not work with latest Airtunes versions. (I could get it to work with Rogue Amoeba´s Airfoil speakers for Mac OS X)
I am not monitoring this thread, but can be contacted at [email protected] for practical questions.
我一直致力于 mDNS 服务发现的简单、纯 Java 实现。 目前仅支持同步浏览,但我计划在下一个版本中添加异步侦听器。 它是免费软件,可在 GitHub 上获取:https://github.com/fflewddur/hola。
唯一的要求是 Java 8 并在类路径中提供 slf4j-api 。
I've been working on a simple, pure Java implementation of mDNS Service Discovery. At the moment only synchronous browsing is supported, but I plan to add an asynchronous listener in the next release. It's free software and available on GitHub at https://github.com/fflewddur/hola.
The only requirements are Java 8 and having the slf4j-api available in your class path.
我发现创建自己的实现更容易(在跨平台案例的 WS-Discovery 和 Bonjour 经验之后) https://github.com/4ntoine/ServiceDiscovery-java。 它为客户端和服务器端提供了 Java 和 iOS 实现。
I've found more easy to create my own implementation (after experience with WS-Discovery and Bonjour for cross-platform cases) https://github.com/4ntoine/ServiceDiscovery-java. It has both Java and iOS impl for both client and server side.
除非您的目标是向其他 mDNS 兼容应用程序宣布服务可用性或使用来自其他应用程序的 mDNS 服务,否则实现您自己的基于广播的服务发现可能更有意义。
Unless your goal is to announce service availability to other mDNS compatible applications or to consume mDNS services from other applications, it might make more sense to implement your own broadcast-based service discovery.
Waiter 似乎是 DNS-SD 的纯 Java 库。 此处提供:
http://code.google.com/p/waiter/
Waiter seems to be a pure Java library for DNS-SD. It's available here:
http://code.google.com/p/waiter/
尝试 avahi4j (https://code.google.com/archive/p/avahi4j/)。 但该项目已被存档,从 2009 年起就没有积极的开发。
Try avahi4j (https://code.google.com/archive/p/avahi4j/). But the project is archived and there is no active development from 2009.