我正在尝试使用 Grizzly Websockets bundle 创建基于 Websockets 的应用程序。我正在 Apache Felix 中使用 Bndtools 执行此操作。
不幸的是,我似乎拥有所有需要的依赖项,但由于以下故障,Grizzly bundle 无法加载:
org.glassfish.grizzly.websockets-server-2.3.23Unable to resolve
org.glassfish.grizzly.websockets-server [23](R 23.0): missing
requirement [org.glassfish.grizzly.websockets-server [23](R 23.0)]
osgi.wiring.package; (osgi.wiring.package=sun.misc) Unresolved
requirements: [[org.glassfish.grizzly.websockets-server [23](R 23.0)]
osgi.wiring.package; (osgi.wiring.package=sun.misc)]
我研究了这个失败,最初是在寻找一个 bundle ,结果发现显然这是某种真正不需要的 JVM 库。我已经看到了涉及向 conf/config.properties 文件添加一行的解决方法和解决方案:
org.osgi.framework.system.packages.extra=sun.misc
我知道这是一个危险的解决方法,并且有传言称该问题有“更安全”的解决方案。它们都涉及对标签或 config.properties 文件进行更改。
不幸的是,在 Bndtools 环境中,显然没有这样的标签或文件可供我编辑!
或者,至少,我在我的 Bndtools 项目中找不到这些东西。
有没有办法在基于 Bndtools 的项目中解决这个“sun.misc”问题?我正在使用 Bndtools 存储库,并且想知道我需要编辑哪些“bnd”文件,以及将哪些内容放入这些文件中。
请大家指教...
最佳答案
您需要将 -runsystempackages: sun.misc
添加到 bnd/bndrun 文件中。
关于osgi - Websockets Bundle 对 sun.misc 的依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33292996/