Log4j的配置文件应该放哪里? 我的Log4j的配置文件是放在classpath下的。但测试的时候总是会报错:java.io.FileNotFoundException: Log.properties (系统找不到指定的文件。)拿问高手知道是怎么回事?代码如下:Logger logger = Logger.getLogger(logFile);PropertyConfigurator.configure("Log.properties"); 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 默认log4j.properties 放到classpath目录就可以了 一般情况下新建一个config目录,配置文件放在config目录下,然后将config放到classpath下 PropertyConfigurator.configure("Log.properties");把绝对路径加进去就不会报错了 楼上两位都不对一般放在src/目录下就可以啦,编译完后就在classes目录下 在类中直接声明private final static Logger logger = Logger.getLogger(xxx.class); 怀疑是不是要这样:PropertyConfigurator.configure("/Log.properties");楼主试试 “PropertyConfigurator.configure("Log.properties");”此处你使用了相对路径(不是以"/"或"X:"开头),所以它会在当前工作路径下找如果你是用java.exe执行的程序,那就是在你执行java时的目录其他情况就很难说了,不过可以用System.getProperty("user.dir")获得简单的办法就是用绝对路径 properties 在这个属性文件里面啊 所谓的classpath是用来告诉jvm .java和.class在哪里的。而PropertyConfigurator.configure("Log.properties");他是告诉log4j要加载的配置文件在哪,这与classpath没有关系。你所要做的就是要搞清在你写以上代码时你的当前目录是在哪,一般来说当前目录都是你的包的上层目录。具体可以用下面代码得到:System.out.println(new File("").getAbsolutePath());System.out.println(System.getProperty("user.dir"));然后你就可以用“/”进入到下一级目录用“.”到上一级目录了。 一种是加载全路径,一种是放在src下面,然后会自动编译到\WEB-INF\classes下面 不过好像.properties和.xml有一点区别,忘了 放在项目中的任何位置都可以,只是在用PropertyConfigurator.configure(String configFilePath);的时候注意正确位置就可以了如果是放在项目根目录下,用PropertyConfigurator.configure("log4j.property");就可以了否则就要用PropertyConfigurator.configure("XXX/XXX/log4j.property");这样的方式了此位置是相对于项目根目录的位置 Java,两个JPanel之间怎么传值 谁能帮我,只剩10分了。谁回答,就为谁祈福,真的。。。。。。 新手提问,关于jar文件打包执行的问题,谢谢~ 标签随鼠标怎么变化 Java数据库连接池的类为什么要自定写,jdk里面为什么不提供一下标准的数据库连接池的类呢? Hibernate的映射配置怎么更快的记住它呢 关于String的比较问题,高手帮忙解决 怎样得到某一天是星期几 大家帮我看一个java程序的编译错误 这时 我马上就要毕业了,想找一份程序员的工作,希望大家帮帮我,我的条件是... 一个关于null的简单问题 swt:如何获取window的屏幕大小?
一般放在src/目录下就可以啦,编译完后就在classes目录下
private final static Logger logger = Logger.getLogger(xxx.class);
PropertyConfigurator.configure("/Log.properties");
楼主试试
此处你使用了相对路径(不是以"/"或"X:"开头),所以它会在当前工作路径下找如果你是用java.exe执行的程序,那就是在你执行java时的目录
其他情况就很难说了,不过可以用System.getProperty("user.dir")获得简单的办法就是用绝对路径
System.out.println(new File("").getAbsolutePath());
System.out.println(System.getProperty("user.dir"));
然后你就可以用“/”进入到下一级目录用“.”到上一级目录了。
PropertyConfigurator.configure(String configFilePath);的时候注意正确位置就可以了
如果是放在项目根目录下,用PropertyConfigurator.configure("log4j.property");就可以了
否则就要用PropertyConfigurator.configure("XXX/XXX/log4j.property");这样的方式了
此位置是相对于项目根目录的位置