是否有支持管理类加载器的Java IoC容器?

时间:2012-05-30 18:29:10

标签: java inversion-of-control classloader ioc-container

我正在寻找一个有点轻量级的IoC容器,它还允许我管理具有不同类路径的不同类加载器。然后可以在不同的类加载器/类路径中运行多个版本的代码,但所有代码都一起管理。

3 个答案:

答案 0 :(得分:1)

您可以查看pico容器http://picocontainer.org

答案 1 :(得分:1)

OSGi可以非常轻量级,相信我! 我看到它在8 MB RAM上运行 - see here

顺便说一句,根据规范,所有的服务都是可选的,你可以去除你不需要的一切 - 这就是OSGi的美妙之处,它非常模块化。

不同的类加载器当然没有问题,每个bundle都有自己的类加载器;可以使用清单的语法详细控制依赖关系。

如果您想要IoC并且对经典的BundleActivator不满意,您可以使用OSGi声明式服务 - 请参阅编号为112的OSGi规范。

答案 2 :(得分:0)

您可以使用焊接或任何其他DI框架以及OSGI。

如果你正在编写一个网络应用程序,那么jboss now supports OSGI无缝地也会提供WELD。