我有一组使用Maven构建的OSGi包,我想知道是否有可用的Maven插件允许我执行以下操作:指定要包含在分发中的bundle集和/或指定单个bundle并解决依赖关系。构建完整的分发框架。我的意思是一个zip文件包含所有需要的包,加上felix的正确目录结构,这样用户可以简单地解压缩文件并输入“java-jarbin/felix.jar”。我做了一些谷歌搜索,但除了appassembler之外,我没有发现任何有前途的东西。你们有想过好的解决方案吗?更新这是我要完成的工作的示例。example-parent\bundle-onebundle-twobundle-threeassembl
我开发了一个OSGi包,我通常从Eclipse对其进行测试。导出包后,我得到一个bundle.jar文件。我希望能够从命令行运行生成的文件。像这样的东西:C:\java-jarbundle.jarosgi_framework路径但是,如何在其中包含osgi框架?还有,我怎样才能立即启动bundle? 最佳答案 您可以从命令行启动OSGi框架,如下所示。首先是Equinox:java-jarorg.eclipse.osgi_VERSION.jar-console注意。将VERSION替换为您安装的Equinox版本。对于菲利克斯:ja
今天有人问我在我们当前的OSGi应用程序中使用Maven是否是个好主意。我们使用了Bndtools,它很棒,因为它使开发变得尽可能简单。即使在应用程序运行期间,Bndtools使用OBR来维护其他包和依赖项解析。由于Maven广泛传播并且非常流行,因此大多数人也尝试在OSGi环境中使用它。对我来说,这是两种不同的方法。OSGi有自己的依赖项声明,即MANIFEST.MF和Maven的pom,您可以在其中声明它们。所以如果你同时使用它们,你将声明依赖关系两次。当然,您可以使用ApacheOSGiMaven插件来避免它,Maven负责创建MANIFEST.MF。但是Maven存储库并不真正
将maven-bundle-plugin从版本2.3.5更新到版本2.4.0后运行mvncleaninstall输出一些警告信息,我不完全理解。例如导出ch.entwine.weblounge.contentrepository.impl.index,有1个,私有(private)引用[org.elasticsearch.action.bulk]我想这与嵌入式库(elasticsearch)有关。以下是POM的部分内容:...org.elasticsearchelasticsearch0.19.9......ch.entwine.weblounge.contentrepository.
我有一个OSGI应用程序,并且有大约30个包(jar文件)。今天我决定看看它是如何工作的/它是否适用于Java9。所以我开始了我的申请并得到了WARNING:AnillegalreflectiveaccessoperationhasoccurredWARNING:Illegalreflectiveaccessbyorg.apache.felix.framework.util.SecureAction(file:/home/.../jar/org.apache.felix.framework-5.4.0.jar)tomethodjava.net.URLClassLoader.addURL
据我了解,在OSGi中,您可以在运行时更新jar,而无需重新启动服务器。但是jboss也有hot-deployment,就是全ear更新,服务器还在运行。那么OSGi在jboss中的企业java项目中有什么好处? 最佳答案 我相信答案与每个OSGi用例相同:模块化和更精细的更新粒度。OSGi不仅仅是在运行时更新jar而无需重新启动服务器。从您的问题的角度来看,它是在运行时更新jar而无需重新启动应用程序。我承认我不知道JBossAS中EAR热部署的具体实现,但无论如何EAR更新不可能被设计成保留应用程序的整个状态。服务器仍在运行,但
我正在开发一个Eclipse插件(或者实际上,一个基于Eclipse的应用程序的插件),它需要用户输入一些配置。通过查看文档,似乎有两个首选项API-一个在org.eclipse.core.runtime.preferences中,扩展/实现OSGIprefererenceAPI,另一个,JFace特定的,在org.eclipse.jface.preference中.然后我们有org.eclipse.ui.preferences,也是。OSGIAPI有一个层次结构的节点树-一个首选项节点(Preferences或IEclipsePreferences)可以有多个子节点,它们本身可以包含
我正在从事一个类似于Taintdroid的项目,该项目使用一种称为“动态污点分析”的科学技术。所以我必须为OSGi找到合适的容器以在android上部署。我在https://stackoverflow.com/questions/560794/what-osgi-container-do-you-recommend中找到了答案但它不是指定给智能手机的。那么智能手机最喜欢的OSGi容器是什么?为什么? 最佳答案 我使用ApacheFelix,它支持Androidoutofthebox.我喜欢它是因为它“干净”的OSGi实现,而且占用空
我正在研究一个使用OSGI的项目,该项目的代码低于代码@Component(policy=ConfigurationPolicy.OPTIONAL,ds=true,immediate=true,metatype=false)@Service(TestInterface.class)publicclassTestInterface{在这里,代码无法实现服务将要公开的接口。另外,我在任何地方都验证了这一点没有在@Reference的任何地方引用。它真的需要将其作为服务而不是仅仅是组件吗?如果我想在另一个组件中使用它,则必须通过实现接口来作为服务。OSGI是否真的要求将服务实现接口?看答案OSGI服
我们想要开发可扩展的Android应用程序,并且正在寻找一种处理插件的方法。您认为最好的方法是什么:使用Android的PackageManager。这里的问题是PM在设计时并未考虑插件,因此我们必须自己实现依赖性检查等功能。使用现有的Java框架,例如JPF(Java插件框架)或OSGi。OSGi对我们来说看起来太大了,而且没有太多关于Android上的JPF的可用信息。其他想法? 最佳答案 “插件”到底是什么意思?使用Intent和IntentFilter概念,您已经可以做很多我称之为“插件”的事情。例如,您可以允许其他应用程序