如何将SLF4J用于部署在带有Hibernate JPA的GlassFish 3上的Java EE web应用程序?
是否可以在特定GlassFish应用程序中使用SLF4J,并仅为该应用程序配置SLF4J?我们目前正在努力解决一个事实,即安装了Hibernate的GlassFish本身在其lib目录中包含SLF4J API和记录器绑定 我们的团队正在开发一个JavaEE6Web应用程序。为了便于开发,该应用程序部署在GlassFish 3.1.2上,但它应该尽可能具有可移植性 我们决定使用SLF4J来记录应用程序消息。根据消息级别,应用程序必须以不同的方式处理某些日志消息,因此必须能够自行配置日志后端,而不是在应用程序服务器中配置日志 不幸的是,GlassFish 3.1.2在其lib文件夹中包含了slf4j-api-1.5.8.jar和slf4j-jdk14-1.5.8.jar。这会阻止我们的应用程序使用slf4j-api-1.7.5.jar和slf4j-simple-1.7.5.jar(后者最终将被另一个绑定取代)如何将SLF4J用于部署在带有Hibernate JPA的GlassFish 3上的Java EE web应用程序?,hibernate,jakarta-ee,jpa,glassfish,slf4j,Hibernate,Jakarta Ee,Jpa,Glassfish,Slf4j,是否可以在特定GlassFish应用程序中使用SLF4J,并仅为该应用程序配置SLF4J?我们目前正在努力解决一个事实,即安装了Hibernate的GlassFish本身在其lib目录中包含SLF4J API和记录器绑定 我们的团队正在开发一个JavaEE6Web应用程序。为了便于开发,该应用程序部署在GlassFish 3.1.2上,但它应该尽可能具有可移植性 我们决定使用SLF4J来记录应用程序消息。根据消息级别,应用程序必须以不同的方式处理某些日志消息,因此必须能够自行配置日志后端,而不是
有没有办法告诉GLASISFISH在考虑其自身之前考虑应用程序的LIB(使用正确的API版本)和确保应用程序提供SLF4J绑定的任何方法吗?
我们正在使用Eclipse进行开发,但是我们没有使用Maven。到目前为止,我发现的大多数调整/解决方法都涉及Maven中的配置,我们无法使用。如果您能提供任何特定于Eclipse的提示,那就太好了。在Eclipse项目的属性中,我已经配置了构建路径的顺序,以便Web应用程序库位于顶部。但这似乎还不够 非常感谢你的帮助 更新1:为了让它暂时工作,我刚刚从GlassFish库目录中删除了SLF4J库。然后,应用程序使用其自备的SLF4J库。但我不认为这是一个部署过程的解决方案,我不确定这是否会破坏GLASISFISH使用的任何东西(为什么图书馆仍然驻留在那里?),这不是我们开发团队的实用解决方案。p>更新2:实际上,包含现成SLF4J库的不是GlassFish,而是我通过更新工具安装的Hibernate JPA包。我们目前不需要Hibernate JPA,但在某个时候可能需要更改为Hibernate,并且我们还希望在安装了Hibernate JPA或其他包含软件包的SLF4J的情况下,能够轻松地将应用程序移植到应用服务器。我相应地更新了问题标题如何解决应用程序服务器和应用程序相互依赖的一般问题?这是由于“类加载器委派”,请尝试更改它,使其从应用程序中获取类,而不是从父级获取类