我发布我的解决方案是因为上述解决方案都不适合我。它适用于 Windows XP/7。
解决方案
- 从 log4j 站点 [1] 下载 zip 或 tar 包到您的计算机并解压缩下载的文件。
- 将文件 log4j-VERSION.jar 复制到您的 LOG4J_ISTALLATION_DIR(例如 c:\javalibs\log4j-1.2.16.jar)
- 打开“我的电脑/计算机”的属性(图标应该放在桌面上,只需在其上单击鼠标右键并选择属性)
- 打开选项卡“高级系统设置”。
- 打开标签“高级”
- 点击“环境变量”按钮。
- 在“环境变量”区域找到变量CLASSPATH,与左键匹配,然后单击“编辑”按钮。
- 粘贴/键入 log4j 库的路径 - LOG4J_ISTALLATION_DIR\log4j-VERSION.jar; (例如 c:\javalibs\log4j-1.2.16.jar;)
- 点击“确定”按钮。
- 单击“环境变量”窗口中的“确定”按钮。
- 单击“系统属性”窗口中的“确定”按钮。
-
转到命令行并通过尝试 log4j 简短教程中的示例来检查是否一切正常(附在下面):
cd c:\Users\User\log4j
javac MyApp2.java
2012-03-30 21:32 510 酒吧班
2012-03-30 21:24 177 Bar.java
2012-03-30 21:26 334 MyApp2-log4j.properties
2012-03-30 21:32 916 MyApp2.class
2012-03-30 21:25 775 MyApp2.java
java MyApp2 MyApp2-log4j.properties
0 [main] INFO MyApp2 - 进入应用程序
2 [main] 调试栏 - 又做了一次
3 [main] INFO MyApp2 - 退出应用程序
上下文:准备使用一些 *jar 文件的程序 [1](问题来源):
// 1. 转到您的源目录(例如 c:\Users\Hopbit\log4j )
// 2.在Bar下面创建类并保存为Bar.java
import org.apache.log4j.Logger;
public class Bar {
static Logger logger = Logger.getLogger(Bar.class);
public void doIt() {
logger.debug("Did it again!");
}
}
// 3. 在MyApp2类下面创建并保存为MyApp2.java
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
public class MyApp2 {
static Logger logger = Logger.getLogger(MyApp.class.getName());
public static void main(String[] args) {
// BasicConfigurator replaced with PropertyConfigurator.
PropertyConfigurator.configure(args[0]);
logger.info("Entering application.");
Bar bar = new Bar();
bar.doIt();
logger.info("Exiting application.");
}
}
// 4. 创建并保存包含以下代码的 MyApp2-log4j.properties 文件:
# Set root logger level to DEBUG and its only appender to A1.
log4j.rootLogger=DEBUG, A1
# A1 is set to be a ConsoleAppender.
log4j.appender.A1=org.apache.log4j.ConsoleAppender
# A1 uses PatternLayout.
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
// 5. 尝试编译上面的例子,它应该返回如下内容:
> c:\Users\Hopbit\log4j>javac MyApp2.java
> MyApp2.java:1: package org.apache.log4j does not exist
> import org.apache.log4j.Logger;
> ^
> // [...] SOME OTHER ERRORS HERE
链接和提示
[1] http://logging.apache.org/log4j/1.2/manual.html(“log4j 简介:Ceki GŁlcŁ,2002 年 3 月”)
[2]http://logging.apache.org/log4j/1.2/download.html
[3] 上述解决方案建立在文件 INSTALL 中,该文件位于 log4j 包下。