我正在Eclipse中开发一个OSGi包(项目1 ),并且必须将其导出为一个jar,以便在我的目标环境中运行。我使用普通的eclipse导出为“jar文件”或导出为“可部署的插件和片段”,到目前为止两者都运行良好。
现在我有了另一个eclipse项目(项目2,非OSGi,只有一些类),我希望将它包含在我的包中,作为jar-lib。
我尝试在构建路径设置中将新项目添加为链接源。代码将很好地解析,但由于缺少类而无法构建jar。
我还尝试在buildpath-settings中添加新项目作为项目。它对“可部署的插件和片段”无效,但对“jar文件”有效。但是,每次我导出一个新的jar文件时,它都会将第二个项目的所有源文件和项目文件添加到jar文件中。
什么最好的方法不包括它
标准的 OSGi 方法是在 project2 中使用 Export-Package,在 project1 中使用 Import-Package。毫无疑问,你的project2不是纯粹的OSGi,因为启用OSGi的jar仍然是一个普通的jar,默认情况下可以在OSGi之外使用。
因此,除非有一个非常好的嵌入你的理由
我是OSGi的新手。我正在使用Apache Felix。我已经构建了一个捆绑包,并且具有依赖性。当我尝试使用启动它会给我这个错误。 org . OSGi . framework . bundle exception:无法解析lk . ucsc . research . belly runner[20](R 20.0):缺失需求[lk . ucsc . research . belly runner
简单的OSGi应用程序与包内的依赖关系。 我在玩karaf。我从写一个简单的Rest应用程序开始。https://github.com/YaroslavTir/osgi-jersey-hibertate/tree/stackoverflow/examples/karaf-rest-core 我将karaf示例作为backbond,使用restendpoint运行我的第一个包非常简单,但是当我添加m
我正在制作一个运行在karaf 4.0.4上的osgi应用程序。 我的应用程序使用一个PostgreSQL数据库。连接器由pax jdbc处理。我使用Karaffeature和功能。 一些模块提供可以添加/删除的服务。 TL/DR:有没有办法将我的实体拆分成多个包? 以下是我的情况: 我目前有一个名为model的模块 我的文件 类注释 注释的类和 访问我实体的服务 这是我的持久性文件: 以及用于访
我创建了一个依赖于SLF4J的捆绑包,因此使用Logback来实现OSGI。这一切都捆绑起来并安装正常,但是当我开始捆绑时,我得到以下异常: org.osgi.framework.BundleException: 無法解析 com.felix.test [20](R 20.0): missing requirements [com.felix.test [20](R 20.0)] osgi.wir
我试图在Felix中添加一个新的OSGI包(没有Karaf)作为ActiveMQ客户端(消息发送方)。 ActiveMQ客户端在非OSGI环境中运行良好。但当我在Felix中使用相同的代码(稍加修改)时,它会抛出以下错误: org.osgi.framework.捆绑异常:无法解决com.packtpub.felix.bookshelf-库存-impl-mock[7](R 7.3):缺少需求[com
我需要分配在OSGi包的许可使用 } 尽管此权限出现在活动权限列表中,但当我从d:\temp文件夹安装并启动捆绑包时,它会导致一个异常,说明无法解决此问题: 我使用的例子来自《OSGI在行动》一书的第14章,我的osgi实现是Equinox(org . eclipse . OSGI _ 3 . 7 . 2 . v 20120110-1415 . jar),启动OSGi的命令行是 似乎缺少了一些东西