第126章OSGIEnterpriseRelease5specification提到兼容性:"SupportthetraditionalJNDIprogrammingmodelusedbyJavaSEandJavaEEclients."和使用OSGI不感知代码:"ClientsandJNDIContextprovidersthatareunawareofOSGiusestaticmethodstoconnecttotheJREJNDIimplementation.TheInitialContextclassprovidesaccesstoaContextfromaproviderand
我们有一个大的(~215个包,并且还在增加)osgi(felix+springdm)项目,使用maven和maven-osgi插件构建。我们有几个maven方式的问题:1.子模块pom必须从父pom继承以利用公共(public)变量和依赖项(没关系),但是父pom必须包含所有包pom才能将所有内容构建在一起。这种循环引用使得保持所有同步变得非常困难。2。子包的单独版本控制非常复杂,以至于(在我加入项目之前)决定对所有包使用相同的版本。这意味着我们现在也会为每个版本更新所有bundle的版本,即使实际上只是更改了其中的一部分。这使得osgi的整个概念有点毫无意义恕我直言。请注意,我并不是
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。有没有人在OSGi中部署了企业应用程序并发现它有用?我可以看到好处、强制模块化、良好的依赖性定义等。但这些似乎主要是与构建相关的改进。有没有人发现动态替换现有模块有用?我们倾向于按进程拆分我们的应用程序,老实说,使用更新的库启动应用程序的新实例并不难。OSGi对此有用吗?更换模块的可靠性如何?令我印象深刻的是,如果您有一个非常繁忙的进程并且有很多事情在进
我正在评估OSGi容器,并提出了使用Glassfish来包含我的OSGi应用程序组件的主题。我的问题是:Glassfish对此有好处吗?有没有人以这种方式使用过它?背景:-该应用程序不是JavaEE应用程序,而是Spring应用程序。-我一直在评估Felix+Tomcat。-我从未使用过Glassfish,但它具有我们的运营人员感兴趣的一些功能。谢谢! 最佳答案 GlassFish是IMO的重要候选者,我肯定会关注它。一些资源:GlassFish/OSGiDashboardGlassFishandOSGi(andSahoo)atEc
我想知道为什么在构建java应用程序时使用OSGI框架。我正在网上搜索这个,但答案对我来说看起来很复杂。谁能解释一下为什么我们需要采用osgi。如果这个问题不适合stackoverflow,我很抱歉感谢读者的耐心等待。谢谢。 最佳答案 OSGi提供了一个带有模块版本控制的模块化系统,并进一步进行了一些生命周期管理。它管理模块之间的依赖关系、模块的动态/延迟启动/卸载、查找/发现等。这一部分将成为java语言的一部分。与类的意大利面条连接相比,它的复杂性更低。 关于java-为什么使用os
目前,作为大学最后一年项目的一部分,我正在开发一个新的版本控制系统。这个想法是让它具有高度的适应性和可插拔性。我们使用OSGi框架(Equinox实现)来管理我们的插件。我的问题是我找不到一种简单易用的方法来测试OSGi包。目前,我必须使用Maven构建bundle,然后执行测试工具。我正在寻找类似Eclipse的JUnit测试运行器之类的东西,因为它会节省我很多时间。有没有快速简便的方法来测试OSGi包?编辑:我不需要任何东西来测试Eclipse插件或GUI组件,只需要OSGi包。EDIT2:有没有支持JUnit4的框架? 最佳答案
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭6年前。Improvethisquestion所以今天下午我花了一些时间终于坐下来开始阅读神秘而难以捉摸的“OSGi”及其所谓的bundle。好的,所以我想我明白了。一个OSGi“包”基本上是一个带有一些附加list信息的JAR。而且,不是将它部署到普通的应用程序服务器(或其他容器),而是将它部署到像ApacheFelix这样的OSGi服务器。它运行并为用户/客户端提供服务。这与部署到应用服务器的普通EAR有何不同???OSGi似乎正
UPDATE2:Sincemyblogisabitdeadthelinksgotdegradedsoyoucanviewthearticleshere:https://www.dropbox.com/s/xvobgzqnl43kcda/Managing_OSGi_Transitive_Dependencies__Part_1____CitizenRandom.pdf?dl=0https://www.dropbox.com/s/0bdooux4yhrf8lf/Managing%20OSGi%20Transitive%20Dependencies%20%28...pdf?dl=0https
作为一个对依赖过敏的人,我什么时候会使用像OSGi这样的东西而不是内置的java6http://java.sun.com/javase/6/docs/api/java/util/ServiceLoader.html(我想让插件jars被放入)。(仅供引用,这是一个Scala应用程序,可以接受任何建议,ServiceLoader非常接近我想要的)。 最佳答案 如果ServiceLoader最能满足您的需求,则表示您正在通过类路径上的文件来寻找服务发现。这只是OSGi提供的一小部分。OSGi将允许您在应用程序运行时动态安装bundle、
我喜欢Rails项目的一件事是,当部署到远程服务器时,如果一切设置正确,您可以这样做:$:bundleinstall并且系统会安装运行项目所需的各种依赖项(rubygems)。Python/Django有类似的东西吗? 最佳答案 您可以卡住需求。这会生成项目所需的所有Python模块的列表。我相信bundle在概念上是相似的。例如:virtualenv--no-site-packagesmyproject_env#createablankPythonvirtualenvironmentsourcemyproject_env/bin/