知识卡片
manifest文件与加载程序把隐式依赖变成显式声明
内容
早期用普通目录管理多套部署配置共享同一代码时,.jar包依赖全靠手工维护,常出现包放错目录、运行时找不到类的问题。解法是给每个模块写manifest文件显式声明依赖,配合通用加载程序解析manifest、算出传递闭包并按序加载、不重复加载。把隐式靠人记忆的依赖变成显式机器可解析的声明,是支持六种部署配置还可控的关键。
参考来源
- 位置:《架构之美》第4章《记忆留存》4.3.1节《模块和加载程序》(源文件:程序之美系列套装(6册)团队之美、项目管理之美、架构之美、数据之美、测试之美、安全之美/_epub-src/OEBPS/Text/part0128.xhtml)
- 结论依据:原文明确"我们中的一些人也觉得必须通过手工的方式来维护.jar文件的依赖关系是不舒服的事情……对于给定的模块名,加载程序将解析manifest文件,构建模块依赖关系的传递闭包"。
- 原始内容:我们中的一些人也觉得必须通过手工的方式来维护.jar文件的依赖关系是不舒服的事情……对于给定的模块名,加载程序将解析manifest文件,构建模块依赖关系的传递闭包。加载程序很小心,不会将一个模块加载2次。