我正在使用Bndtools进行一些开发。Bndtools为Apache和Equinox提供了OSGi运行时。
但是,假设您想要开发包并在Knopflerfish中的Bndtools中测试它们?或者是某些公司的专有容器(是的,它们确实存在,令人惊讶!)?Bndtools使向开发环境添加单独的包变得很容易,但是似乎没有任何明显的方法来添加用于测试的完整运行时。
是否有人可以在Bndtools中添加替代的OSGi运行时环境?
发布于 2015-10-10 21:33:39
只需获取框架JAR并将其拖放到您的存储库中,例如本地存储库。然后,它将出现在运行编辑器的OSGi框架下拉列表中。
注:您可能需要关闭并重新打开编辑器,以便刷新下拉内容。
发布于 2015-10-20 07:44:04
bnd(tools)的思想是在bndrun文件中定义您的运行时。您可以创建任意数量的bndrun文件。bndrun文件包含环境的设置(框架、系统包、属性等)。还有一张捆绑清单。框架和包来自存储库。正如Neil所指出的,您可以通过将它们添加到存储库中来添加不同的框架。
您可以将带有-include的文件包含在bndrun文件中,以便在不同的bndrun文件之间共享变量。然后最好使用解析器来创建-runbundles列表。
在OSGi enRoute中,我们通过这种方式为实际应用程序和调试环境创建不同的运行时。查看OSGi enRoute cm实例,查看debug.bndrun和osgi.enroute.exampes.cm.bndrun文件。注意,debug.bndrun文件包括osgi.enroute.exampes.cm.bndrun文件,因此任何设置都是自动继承的。还请注意合并属性的使用,它允许您添加属性,而无需踩到包含的文件的脚趾。
https://stackoverflow.com/questions/33059115
复制相似问题