我正在尝试使用Grizzly Websockets包创建基于Websockets的应用程序。我在使用Bndtools的Apache Felix中这样做。
不幸的是,我似乎拥有所有必需的依赖项,但由于以下失败,Grizzly捆绑包无法加载:
{{1}}
我已经研究过这个失败,最初在寻找一个捆绑包,但却发现这显然是某种真正不需要的JVM库。我见过涉及在conf / config.properties文件中添加一行的变通方法和解决方案:
{{1}}
我知道这是一个危险的解决方法,并且有传言称这个问题“更安全”。它们都涉及对标签或config.properties文件进行更改。
不幸的是,在Bndtools环境中,显然没有这样的标签或文件供我编辑!
或者,至少,我在Bndtools项目中找不到这些东西。
有没有办法在基于Bndtools的项目中解决这个“sun.misc”问题?我正在使用Bndtools存储库,我想知道我需要编辑哪些“bnd”文件,以及放入这些文件的内容。
有人请指教......
答案 0 :(得分:5)
您需要将-runsystempackages: sun.misc
添加到bnd / bndrun文件中。
答案 1 :(得分:0)
最好的工具是https://codepen.io/anon/pen/jeXMBK?editors=1100#0
您只需在gradle.properties中更改PKG = sun.misc(或其他软件包)并运行gradlew build。
它将生成bundle-fragment,您可以将其添加到类路径中。 然后,该捆绑包包含:
Manifest-Version: 1.0
Export-Package: sun.misc
Fragment-Host: system.bundle; extension:=framework
Bundle-ManifestVersion: 2
Bundle-License: public domain - http://unlicense.org/
Bundle-SymbolicName: com.diffplug.osgi.extension.sun.misc
Bundle-Version: 0.0.0