我正在寻找一种轻量级的 IoC 容器,它还允许我管理具有不同类路径的不同类加载器。然后可以在不同的类加载器/类路径中运行多个版本的代码,但都一起管理。
问问题
318 次
3 回答
1
OSGi 可以非常轻量级,相信我!我已经看到它在 8 MB RAM 上运行 -请参见此处
顺便说一句,根据规范,所有服务都是可选的,你可以去掉你不需要的一切——这就是 OSGi 的美妙之处,它是令人难以置信的模块化。
不同的类加载器当然没问题,反正每个包都有自己的类加载器;可以使用清单的语法详细控制依赖关系。
如果您想要 IoC 并且对经典的 BundleActivator 不满意,您可以使用 OSGi 声明式服务 - 请参阅 OSGi 规范中的编号 112。
于 2012-05-31T20:40:20.530 回答
1
您可以查看 pico 容器http://picocontainer.org
于 2012-05-30T18:35:25.977 回答
0
您可以将weld 或任何其他DI 框架与OSGI 一起使用。
如果你正在编写一个 web 应用程序,那么jboss 现在无缝支持 OSGI 并且还提供了 WELD。
于 2012-05-30T18:49:05.923 回答