我需要一个建议。我想模块化我现有的Java web应用程序。
我试着用maven来做这件事,结果还是行得通。
我设法在一个模块(“核心”)中分离了服务层,而其他两个web应用程序正在使用相同的核心模块。
现在我想用OSGi来尝试它,我想让OSGi参与模块化,这样我就可以在需要的时候使用它。
我这里有几个问题:
如果有人有什么建议,或者可以把我链接到一些有用的教程,
我将不胜感激。
提前谢谢你,
米洛斯。
发布于 2011-04-08 01:05:59
发布于 2013-03-07 20:50:45
使用OSGi需要深入了解所有的OSGi特性,特别是不同的类加载行为。您需要考虑OSGi是否真的对您的应用程序有好处。如果你广泛地使用Class.forName,你会遇到问题。还有许多第三方库不容易与OSGi一起使用。
因此,在对代码进行任何更改之前,一定要了解OSGi。我推荐OSGi in Depth和/或OSGi in Action这本书来学习和理解OSGi。
不要误会我的意思,OSGi是一种很好的技术,但它比乍一看要难得多。如果您的应用程序完全使用OSGi,则不需要Tomcat,OSGi容器是OSGi应用程序的运行时,Tomcat Server是另一个运行时环境。如果您需要与Tomcat Server通信,则可以使用JMS或其他类似工具。了解OSGi远程服务
发布于 2011-04-07 21:27:56
我推荐Spring Dynamic Modules (http://www.springsource.org/osgi)。它的优点是,您不必为OSGi的所有令人讨厌的细节而操劳,并且可以通过Spring IOC使用它。
即使您想要处理OSGi,也不意味着您必须让现有的应用程序支持OSGi。以下两个规范可以帮助您从OSGi接口中抽象出组件:
Spring蓝图声明性服务(请参见http://www.aqute.biz/Snippets/HelloWorldComponent)
祝好运!
https://stackoverflow.com/questions/5581670
复制相似问题