问题标签 [osgi-fragment]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1206 浏览

osgi - OSGi 片段:修补 Eclipse 插件中的错误

在听说过 OSGi 片段后,我想知道:

我可以使用片段来注入补丁,即替换现有签名包中的现有类吗?

是否有文档如何做到这一点?

0 投票
2 回答
2528 浏览

eclipse - 如何使用 Bnd 创建 osgi 片段?

今天我深入了解了bndTools for Eclipse。我有一个好的开始,但我问自己是否可以使用 bndTools 或bnd创建 osgi 片段。从 bnd 项目描述中,它告诉我Fragment-Host标头被 bnd 忽略,但还没有发现这意味着什么。

有人知道是否可以使用 bnd 创建 osgi 片段,如果可以,该怎么做?

问候马库斯

0 投票
1 回答
142 浏览

osgi - 如何从测试包片段访问主机的实例方法/属性?

我有一个捆绑包 test.Bundle1,它具有由蓝图注入实现的一些属性。

我创建了一个主机为 test.Bundle1 的测试片段,我想获得 myClassA 实例化的单例来访问这些属性。

我知道我可以使用 FrameworkUtil.getBundle() 从类名访问包,但我不知道如何获取此类的实例。

我怎么能那样做?

谢谢

克里斯蒂亚诺

0 投票
2 回答
1159 浏览

osgi - OSGi 片段可以有其他片段作为主机吗?

这合法吗?

MANIFEST.MF for org.fragment1(org.host是一个普通的包,不是一个片段):

MANIFEST.MF 用于org.fragment2

或者应该org.fragment2

?

0 投票
1 回答
2805 浏览

osgi - 来自片段的约束与宿主冲突

我正在尝试使用 Fragment-Host 从包 B 扩展包 A 的导入。在 bundle BI 中有这一行: Fragment-Host: 在 bundle B 的 Import-Package 中,我添加了 bundle A 所需的导入

当我尝试使用清单更新捆绑 B 并启动它时,我收到错误:“来自片段的约束与主机冲突”,捆绑 B 中存在所有导入的列表,但是在检查捆绑 AI 的清单时不要'如果这些导入不存在,则看不出为什么它们会发生冲突

另外值得一提的是,我在 OSGi 容器中只运行了两个包的一个版本,并且我已经尝试在更新后重新启动容器。

捆绑清单:

捆绑 B 清单:

有任何想法吗...?

0 投票
1 回答
1642 浏览

osgi - OSGI:要求框架加载包导出的类而不访问每个包的类加载器?

好的。所以我有一个 org.osgi.framework.launch.Framework 我以下列方式以编程方式创建的。

我想要做的是有一个通用的 loadClass 方法(作为此类中的一个方法),它将扫描已安装的包,读取它们的 Export-Package: 声明,并根据类的 packageName 调用正确的包的 loadClass 方法我作为参数传递。

有没有聪明的方法来做到这一点?还是这样做更好:

我意识到我可以使用服务让捆绑包发布其可用服务并让框架使用 getAllServiceReferences() 查询服务,但这对程序员来说工作量更大,我不确定我是否想走声明式服务的路线。

0 投票
1 回答
2176 浏览

osgi - 安装 Fragment 需要在主机上刷新,如何避免?

我有两个捆绑包:捆绑包 A 和捆绑包 B,它们被配置为捆绑包 A 的片段,使用:片段主机:

每当我安装捆绑包 B 时,它都无法启动(安装),因此将其附加到捆绑包 A。

此时,当我检查包 A 的状态时,我发现它仍然无法将包 B 识别为其片段。

如果我确实刷新包 A 它解决了问题 - 包 B 切换到 RESOLVED 并且能够将自己附加到包 A,包 A 将包 B 识别为其片段并且一切都按预期工作。

我的问题是如何避免这种刷新,即一旦安装了bundle B,它就应该将自己附加到已经处于活动状态的主机上。

谢谢你。

0 投票
1 回答
1727 浏览

osgi - Fragment dependency on other fragments

I have a plugin which is the host of fragment A & B. I export a package using Export-Package header from fragment A. Hopefully I can import that package in fragment B using Import-Package header. But the PDE reports that the dependency is unresolved. Is it possible at all using this scenario ? The following post http://www.eclipse.org/forums/index.php/t/238204/ confirms that it is.

Any help would be greatly appreciated.

Thanks & Regards,

Setya

0 投票
1 回答
1706 浏览

java - 片段内的组件从未激活

当我使用 OSGi 声明式服务方式在片段内创建组件时,该组件没有被激活,但我在主机包中的组件被激活。我错过了什么吗?我的片段具有meta-inf主机捆绑符号名称的正确文件条目。

我以这种方式声明一个组件

0 投票
1 回答
7111 浏览

maven - 如何克服 OSGi 中的“缺少可选导入的包”问题

我使用“maven-bundle-plugin”编写了一个 OSGi 包(我尝试将“jruby-complete-1.4.0.jar”作为 osgi 包,请注意只有依赖项是“jruby-complete-1.4.0.jar ")..当我使用诊断命令(#diag XX)通过 osgi 控制台检查包时,它说缺少一些包;

我的 pom 就像;

所以,我尝试像在 pom[2] 中一样在选项中添加那些“可选的缺失包”,<Import-Package>但它提供了更多问题,例如;

pom.xml [2];

我该如何克服上述问题?我正在导出一些包,我需要其他包......我在这里做错了吗?