EAR文件:归档根目录中的jar文件vs库文件夹



我正在查看一个现有的Java EE企业应用程序(EAR),该应用程序和第三方JAR文件位于存档根目录("/")中,以及一个WAR模块和一个JBoss SAR模块。在库文件夹("/lib")中还有一个小得多的集合。我理解库文件夹的作用(在模块之间共享类),但是不清楚将JAR文件放在根目录中的意义是什么。

在类加载器中是否存在某种区别(例如,根jar进入所有模块共享的单个类加载器,但/lib中的jar加载到每个模块的专用CL中)?

没错。EAR根目录中的JAR文件不会自动添加到任何类路径中,因此它们必须显式地包含在模块的META-INF/MANIFEST中。

最新更新