使用AOP和OSGI的最佳解决方案?

时间:2010-06-21 15:31:07

标签: java aop osgi aspectj equinox

我正在使用Equinox,因此Equinox Aspect项目看起来很简单,但该项目似乎处于非活动状态,并且只有一页文档可以让我停在最后。

除了那个项目,我没有看到很多在OSGI中使用AOP的选项。让我知道你们都在想什么以及可能性是什么,谢谢:)。

3 个答案:

答案 0 :(得分:1)

我不知道有什么替代方案,但我不认为Equinox Aspects不活跃。它甚至在即将发布的Helios版本中收到了新功能。

答案 1 :(得分:1)

最大的问题显然是缺乏标准化的负载时间编织; Equinox Aspects和织布工(由AJDT使用)是目前唯一的选择。好消息是,在OSGi工作组中,字节码编织的所有荣耀正在积极进行,并且将“很快”标准化。如果你真的需要现在可靠的东西,你最好的选择仍然是编译时编织。无论如何,恕我直言,这是一个更好的方法,至少对AOP来说是最初设想的设计时活动..

答案 2 :(得分:1)

作为替代方案,您还可以考虑使用Apache Felix依赖管理器,它允许您在运行时向现有OSGi服务添加拦截器。当然,这绝不是一个完整的AOP替代品,但对于某些用例,它可能就足够了。

您可以在此处找到更多文档和示例:

http://felix.apache.org/site/apache-felix-dependency-manager-osgi-design-patterns.html