我正在Eclipse中开发一个OSGi-Bundle (项目1),必须将其导出为jar才能在我的目标环境中运行。我使用普通的eclipse导出为"jar文件“或导出为”可部署的插件和片段“,到目前为止,这两种方法都工作得很好。
现在我有了另一个eclipse-Project (项目2,非OSGi,只是一些类),我想要包含它,作为我的Bundle中的jar-lib。
我尝试将新项目作为链接源添加到buildpath-settings中。代码可以很好地解析,但由于缺少类,无法构建jar。
我还尝试将新项目作为项目添加到buildpath-settings中。它不适用于“可部署的插件和片段”,而适用于"jar文件“。但是,每次我进行新的jar导出时,它都会将第二个项目的所有源文件和项目文件添加到jar中。
如果可能的话,最好的方法是包含它,而不需要一直导出该项目的jars,并且不使用maven?
发布于 2015-07-24 20:16:52
标准的OSGi方法是在project2中使用Export-Package,在project1中使用Import-Package。您的project2不是纯粹的OSGi是没有问题的,因为支持OSGi的jar仍然是一个普通的jar,并且默认情况下可以在OSGi外部使用。
因此,除非有很好的理由将project2类嵌入到project1中,否则我会使用上面的方法。
https://stackoverflow.com/questions/31605766
复制相似问题