我有一个 EAR 项目,我使用getContextClassLoader.getResource
. 但是当我的 WAR 模块和 EJB (.jar) 模块具有相同名称(但内容不同)的资源时,我总是从 EJB 获取资源,而不是从 Web 模块获取资源(来自 EJB 的同名资源会覆盖来自 .WAR 的资源)。
这件事与上下文类加载器有关吗?
UPD:项目结构:
-EAR
-- WEBAPP.WAR
---classes
----my.properties
-- EJB.JAR
---classes
---- my.properties
在webapp.war
和ejb.jar
我有相同的文件(my.properties
)。
但是当我使用
Thread.currentThread().getContextClassLoader().getResourceAsStream("My.properties")
从webapp.war
我总是My.properties
从EJB.JAR
。