Java依赖关系管理

Ada*_*ski 2 java matlab dependencies scala

我们公司生产了许多Java/Scala库供我们的研究部门使用.研究人员通常会从Matlab环境中与这些库进行交互,维护类路径以适应各种库依赖关系.

这些库通常由不同的开发团队生成,因此依赖管理有点脆弱.此外,由于时间限制以及某些代码是专有的这一事实,我们无法建立一个公司范围的持续集成系统.

我的问题:是否有一种工具/机制用于打包Java库(或应用程序),使其库依赖关系与其他库隔离?(例如,通过使用专用的类加载器).我正在考虑与.war文件相同的行,其中部署单元是自包含的,因此依赖性/动态类加载都是隐藏的.

Per*_*ion 5

这听起来像OSGI的一个很好的用例.每个OSGI模块都可以有自己的依赖项,这可能是同一个库的不同版本.使用OSGI还可以提供选择使用哪些模块的好处,具体取决于用户(研究人员).

该技术可用于桌面和服务器应用程序,因此非常强大.

一些参考资料: