- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我知道这是包的区别
1) org.apache.log4j.Logger logger = Logger.getLogger(clazz);
2) org.apache.commons.logging.Log log = LogFactory.getLog(clazz);
第一个通过 log4j
使用记录器,第二个使用 commons.logging
。我们有一个巨大的项目,在某些类中,记录器是使用 log4j
配置的,在某些情况下,它是 commons.logging
。
虽然我确实找到了一个 log4j 属性文件。commons.logging
是否有类似的属性文件?我在哪里配置 commons-logging ?我看不到 commons-logging
生成的日志。
感谢任何帮助。
最佳答案
是的,commons-logging 是一个 Facade API,旨在将您从底层日志框架中抽象出来(实际上可以在 log4j 和 java.util.logging
之间进行选择),以便您可以在不触及代码的情况下从一个切换到另一个 - 只需切换 CLASSPATH 上可用的库。
不幸的是,由于一些设计错误,它在复杂的类加载环境(如应用程序服务器)中出现了问题。目前它实际上被 slf4j 取代了.
在您的情况下,我建议坚持使用一个 API——Log4J 或 commons-logging,即使 commons-logging 将(很可能)委托(delegate)给 log4J。您也可以迁移到使用 SLF4J 并安装桥接 API,但这稍微高级一些。
关于java - Logger.getLogger(className) 和 LogFactory.getLog(className) 之间的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10246708/
下面的代码片段是否有可能将错误记录到数据库或文本文件中?我知道它可以写入 Eclipse 控制台。我是一名 .NET 开发人员,所以我不太确定。 private final static Log lo
我正在尝试在 Maven/Spring 项目上运行 JUnit 并使用 Web 服务客户端 (axis2) 进行测试。 这是有问题的 Web 服务客户端调用: ProServiceLocator lo
我仍在解决 Java 中 Http Builder 的问题。构建器正在使用私有(private)日志。该日志是使用 Logger Factory 生成的。在调试时,我注意到记录器级别为空,因此不会打印
我正在将一些 Java 代码迁移到 Android。代码库包含相当多的 LogFactory.getLog(xxx)。 LogFactory来自org.apache.commons.logging.L
尝试启动 tomcat7 时出现此错误: Buildfile: E:\Workspace\test\config\deploy\build.xml tomcat.start: [java]
我正在使用最新的 STS,刚刚更新:\版本:2.9.0.RELEASE内部版本号:201203011000 我已经将 spring-framework-3.1.1.RELEASE 下载到一个目录中。我
我是 JasperReports 的新手,我想将 JasperReports 集成到我的 Java 程序中,所以当我点击打印按钮时,程序会显示报告。但是当我点击按钮时,我得到了一个NoClassDef
在部署 dwr Web 应用程序时,我不断收到此错误。 我不知道为什么会这样。我无法运行我的任何 DWR 示例项目。 除此之外,我们得到这个 ClassNotFound 错误。这里有什么概念? 这是一
当我在 Glassfish 4.1 服务器上运行我的 rest api 点时,我面临以下 NoClassDefFoundError,即使我将耳朵与 commons-logging 作为依赖项一起发送,
我正在使用 My-eclipse 并做一个 struts 项目,没有语法错误,但在启动 tomcat 服务器时,控制台中出现以下错误。 java.lang.ClassNotFoundException
我得到下一个错误: Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogF
当我使用最新的 tcsever 2.9.2 时,出现此错误。 错误 | wrapper | 2014/01/21 19:06:47 | JVM 在加载应用程序时退出。 信息 |虚拟机 4 | 2014
当我启动我的 Web 应用程序时,我收到 java.lang.ClassNotFoundException: org.apache.juli.logging.LogFactory。 正如您在下图中看到
当我运行应用程序时出现异常 Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/
当我为 android 启用 proguard 时,proguard 将混淆应用程序中包含的所有 jar。这些 jar 包括: libraryjars lib/Analytics_Android_SD
我有一个使用 Spring 运行 json Web 服务的 Maven 项目。该项目在 NetBeans 中运行良好。它被编译成 jar 文件,并且 jar 文件在 Ubuntu VM 中运行良好。但
我使用 cygwin 在 Windows 中安装 Hadoop-0.20.2。如果我跑 $ bin/hadoop version Hadoop 0.20.2 Subversion https://s
错误: E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #1 Process: com.azail.cart.debug, PID: 2403
我可以知道使用 org.apache.commons.logging.LogFactory.getLog 的最佳实践是什么吗? 对我来说,我按以下方式使用它: public class A {
我知道这是包的区别 1) org.apache.log4j.Logger logger = Logger.getLogger(clazz); 2) org.apache.commons.logging
我是一名优秀的程序员,十分优秀!