log4j的配置解决方法
log4j的配置
日志一直配置出现问题,请大家帮忙看看
log4j.properties放在classes文件夹下
#log4j.properties
log4j.rootLogger=warn, A1
log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A1.file=c:\zaly
log4j.appender.A1.DatePattern=yyyy-MM-dd '.html '
log4j.appender.A1.layout=org.apache.log4j.HTMLLayout
log4j.logger.org.apache=warn
测试类文件
import org.apache.log4j.Logger;
import dates.JspCalendar;
public class forlogtest {
public static void main(String []args)
{
Logger logger = Logger.getLogger(JspCalendar.class);
try
{
String a = "jkjk ";
int b = 1;
b += Integer.parseInt(a);
}
catch(Exception e)
{
logger.debug(e);
logger.info(e);
logger.warn(e);
logger.error(e);
logger.fatal(e);
}
}
}
错误信息:c:\zaly这个路径是存在的
log4j:ERROR setFile(null,true) call failed.
java.io.FileNotFoundException: c:zaly (拒绝访问。)
at java.io.FileOutputStream.openAppend(Native Method)
at java.io.FileOutputStream. <init> (Unknown Source)
at java.io.FileOutputStream. <init> (Unknown Source)
at org.apache.log4j.FileAppender.setFile(FileAppender.java:289)
at org.apache.log4j.FileAppender.activateOptions(FileAppender.java:163)
at org.apache.log4j.DailyRollingFileAppender.activateOptions(DailyRollingFileAppender.java:215)
at org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:256)
at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:132)
at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:96)
at org.apache.log4j.PropertyConfigurator.parseAppender(PropertyConfigurator.java:654)
at org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:612)
at org.apache.log4j.PropertyConfigurator.configureRootCategory(PropertyConfigurator.java:509)
at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:415)
at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:441)
at org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConverter.java:468)
at org.apache.log4j.LogManager. <clinit> (LogManager.java:122)
at org.apache.log4j.Logger.getLogger(Logger.java:117)
at forlogtest.main(forlogtest.java:9)
log4j:ERROR Either File or DatePattern options are not set for appender [A1].
------解决方案--------------------
在windows下面设置路径,有时候要加\\,比如c:\\zaly
修改为 log4j.appender.A1.file=c:\\zaly 应该没有问题的
linux下没有问题。
------解决方案--------------------
网上找的
可能的原因:common.loggin*生的的错误,因为common.logging日志无需配置,只要web-inf/classes目录下有它可以解析的文件格式,就会被common.logging作为它的配置文件,也就是说它把log4j的配置文件作为common.logging配置文件初始化。
解决的方法:将common-logging包从web-inf/lib目录下删除,删除之前请确认你的系统中没有用该包。(已验证过),其二,将LOG4J的配置文件不要放在classess目录下(未验证)。
------解决方案--------------------
java.io.FileNotFoundException: c:zaly (拒绝访问。)
试下
log4j.appender.A1.file=zaly.txt
日志一直配置出现问题,请大家帮忙看看
log4j.properties放在classes文件夹下
#log4j.properties
log4j.rootLogger=warn, A1
log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A1.file=c:\zaly
log4j.appender.A1.DatePattern=yyyy-MM-dd '.html '
log4j.appender.A1.layout=org.apache.log4j.HTMLLayout
log4j.logger.org.apache=warn
测试类文件
import org.apache.log4j.Logger;
import dates.JspCalendar;
public class forlogtest {
public static void main(String []args)
{
Logger logger = Logger.getLogger(JspCalendar.class);
try
{
String a = "jkjk ";
int b = 1;
b += Integer.parseInt(a);
}
catch(Exception e)
{
logger.debug(e);
logger.info(e);
logger.warn(e);
logger.error(e);
logger.fatal(e);
}
}
}
错误信息:c:\zaly这个路径是存在的
log4j:ERROR setFile(null,true) call failed.
java.io.FileNotFoundException: c:zaly (拒绝访问。)
at java.io.FileOutputStream.openAppend(Native Method)
at java.io.FileOutputStream. <init> (Unknown Source)
at java.io.FileOutputStream. <init> (Unknown Source)
at org.apache.log4j.FileAppender.setFile(FileAppender.java:289)
at org.apache.log4j.FileAppender.activateOptions(FileAppender.java:163)
at org.apache.log4j.DailyRollingFileAppender.activateOptions(DailyRollingFileAppender.java:215)
at org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:256)
at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:132)
at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:96)
at org.apache.log4j.PropertyConfigurator.parseAppender(PropertyConfigurator.java:654)
at org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:612)
at org.apache.log4j.PropertyConfigurator.configureRootCategory(PropertyConfigurator.java:509)
at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:415)
at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:441)
at org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConverter.java:468)
at org.apache.log4j.LogManager. <clinit> (LogManager.java:122)
at org.apache.log4j.Logger.getLogger(Logger.java:117)
at forlogtest.main(forlogtest.java:9)
log4j:ERROR Either File or DatePattern options are not set for appender [A1].
------解决方案--------------------
在windows下面设置路径,有时候要加\\,比如c:\\zaly
修改为 log4j.appender.A1.file=c:\\zaly 应该没有问题的
linux下没有问题。
------解决方案--------------------
网上找的
可能的原因:common.loggin*生的的错误,因为common.logging日志无需配置,只要web-inf/classes目录下有它可以解析的文件格式,就会被common.logging作为它的配置文件,也就是说它把log4j的配置文件作为common.logging配置文件初始化。
解决的方法:将common-logging包从web-inf/lib目录下删除,删除之前请确认你的系统中没有用该包。(已验证过),其二,将LOG4J的配置文件不要放在classess目录下(未验证)。
------解决方案--------------------
java.io.FileNotFoundException: c:zaly (拒绝访问。)
试下
log4j.appender.A1.file=zaly.txt