我有一个简单的 Holder 模式代码:
public class RealSingleton {
private RealSingleton() {
// Come here two times
}
public static RealSingleton getInstance() {
return Holder.instance;
}
private static class Holder {
private static final RealSingleton instance = new RealSingleton();
}
}
在 EJB 容器中访问它时,我进入构造函数 2 次。我的同事无法在他的环境(JBoss 6)上重复这一点。我应该检查什么以找出问题所在?
UPD
我在构造函数中添加了手表this.getClass().getClassLoader()
,第一次是{org.jboss.mudules.ModuleClassLoader@6572}"ModuleClassLoader for Module "deployment.Metrics_ear.ear.web_war.war:main" from Service Module Loader"
第二次{org.jboss.mudules.ModuleClassLoader@6572}
这是否表明我有 2 个类加载器?顺便说一句,我正在使用 IDEA