Java 注册自定义org.osgi.resource.resource

Java 注册自定义org.osgi.resource.resource,java,osgi,Java,Osgi,如何注册自己的OSGi资源(org.OSGi.resource.resource,而不是捆绑包中的文件),它可以定义功能和需求 我知道,我可以在包的清单中定义一些。但我想在运行时定义一些 我的用例:我想为不同的环境(硬件、操作系统、配置)编写一系列捆绑包。仅当满足其要求时,才应启动每个捆绑包。现在,我想构建一个环境检测包,它对环境运行几个或多或少复杂的检查,然后提供相应的功能。 我的目标是,只启动与其环境匹配的捆绑包 我花了很多时间,但除了bundle之外,我没有找到注册资源的方法。我认为您要做

如何注册自己的OSGi资源(org.OSGi.resource.resource,而不是捆绑包中的文件),它可以定义功能和需求

我知道,我可以在包的清单中定义一些。但我想在运行时定义一些

我的用例:我想为不同的环境(硬件、操作系统、配置)编写一系列捆绑包。仅当满足其要求时,才应启动每个捆绑包。现在,我想构建一个环境检测包,它对环境运行几个或多或少复杂的检查,然后提供相应的功能。 我的目标是,只启动与其环境匹配的捆绑包


我花了很多时间,但除了bundle之外,我没有找到注册资源的方法。

我认为您要做的是使用功能和需求。你可以发明你自己的,然后让你的包通过manifest头需要它。根据运行时环境,您可以通过frameworklaunch属性配置framework实例以提供适当的功能