Java log4j错误:值未由键解析:项目\报告\目录
我尝试在我的项目中使用log4j,并创建了以下逻辑: 日志类别:Java log4j错误:值未由键解析:项目\报告\目录,java,log4j,Java,Log4j,我尝试在我的项目中使用log4j,并创建了以下逻辑: 日志类别: public class Log { //Initialize Log4j instance private static Logger Log = Logger.getLogger(Log.class.getName()); //We can use it when starting tests public static void startLog (String testClassName)
public class Log {
//Initialize Log4j instance
private static Logger Log = Logger.getLogger(Log.class.getName());
//We can use it when starting tests
public static void startLog (String testClassName){
Log.info("Test is Starting...");
}
//We can use it when ending tests
public static void endLog (String testClassName){
Log.info("Test is Ending...");
}
//Info Level Logs
public static void info (String message) {
Log.info(message);
}
//Warn Level Logs
public static void warn (String message) {
Log.warn(message);
}
//Error Level Logs
public static void error (String message) {
Log.error(message);
}
//Fatal Level Logs
public static void fatal (String message) {
Log.fatal(message);
}
//Debug Level Logs
public static void debug (String message) {
Log.debug(message);
}
}
log4j.属性:
#logging level
log4j.rootLogger=INFO, stdout, file, console
# stdout settings
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%m%n
log4j.logger.org.mortbay.log = INFO
# File settings
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=c:\\Combo.log
log4j.appender.file.MaxFileSize=1MB
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
因此,当我尝试执行测试时:
公共类LoginTests扩展了BaseTest{
@Test (priority = 0, description="Invalid Login Scenario with wrong username and password.")
public void invalidLoginTest_InvalidUserNameInvalidPassword () {
Log.info("Debug message");
}
我得到了stacktrace,它以:
最后是:
控制台包含许多行(几百行),其中包含文本2020-11-05 23:00:51占位符解析程序[main][WARN]值,未按键解析:项目报告目录
使用java.lang.StackOverflowerr
验证长stactrace:
此错误是什么意思,以及如何解决此问题?当缺少文件
lo4j.properties
时,会出现此问题
项目运行良好的文件示例:
#根记录器选项
log4j.rootLogger=信息、文件、标准输出
#将日志消息直接发送到日志文件
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.file=${user.dir}/log4j/log4j-test-automation.log
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.patternalyout
log4j.appender.file.layout.ConversionPattern=%d{yyyyy-MM-dd HH:MM:ss}%-5p%c{1}:%L-%m%n
#不要附加旧文件。每次都创建一个新的日志文件
log4j.appender.dest1.Append=false
#将日志消息直接发送到标准输出
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.patternalyout
log4j.appender.stdout.layout.ConversionPattern=[%-4p]%d{dd-MM-yy HH:MM:ss}%t}%m%n