java应用程序如何自定义log4j配置文件的位置
目录
- 自定义log4j配置文件的位置
- 使用log4j很方便
- log4j因配置文件放置位置出错
自定义log4j配置文件的位置
使用log4j很方便
1、添加依赖的log4j-1.2.8.jar包;
2、增加log4j.properties配置文件,但这个配置文件应该放在哪个目录下比较合适,今天来讨论下:如何自定义配置文件的存放位置,尤其是代码需要打包运行的时候就需要考虑这个问题。
一般情况,不论是java应用程序还是web程序,代码编译成功且能正常运行的情况下,log4j.properties配置文件会在com的同级目录下有一个拷贝,如图所示为java工程和web工程,都可以正常打印输出日志信息。
文章图片
该java工程的bin目录下和com同级有一个log4j.properties的拷贝。
文章图片
该web工程的classes目录下和com同级有一个log4j.properties的拷贝。
当java代码需要打包运行的时候,将log4j.properties配置文件存放到指定目录是个比较好的选择,便于发布和维护,如图就是将已发布好的目录结构,应用代码打包成rwd_app.jar,配置文件放到config目录下,代码运行时从自定义的目录中加载日志配置文件。
文章图片
文章图片
log4j因配置文件放置位置出错
ERROR StatusLogger No Log4j 2 configuration file found. Using default configuration (logging only errors to the console), or user programmatically provided configurations. Set system property 'log4j2.debug' to show Log4j 2 internal initialization logging. See https://logging.apache.org/log4j/2.x/manual/configuration.html for instructions on how to configure Log4j 2jar版本
log4j-1.2.17; log4j-api-2.11.1; log4j-core-2.11.1
因为学习Mybatis初次接触到log4j,出现以上的的报错信息。
通过它的报错信息可以知道缺少配置文件,但是我们已经在资源文件夹下创建了对应的文件目录及log4j.properties配置文件。
网上某些解决办法是由于我们的log4kj是2.x版本,所以配置文件设置的是log4j2.xml,以下是它的内容,在官方文档上可以找到。
可是创建这个文件后依旧是这个错误,那么我就怀疑是不是log4j包里面设置的就是在资源文件夹的根目录下,移动到根目录下果然问题解决了。目录层级如下图:
文章图片
新的问题是如果把之前创建的log4j.properties配置文件放到资源文件夹根目录下是不是有效。
【java应用程序如何自定义log4j配置文件的位置】以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
推荐阅读
- 如何退出蚂蚁合花
- 在Android Studio 的External Tools添加javap命令
- 支付宝app支付java后台流程及原理分析
- 为开发者而建的地图,Mapbox 如何服务安卓用户
- Laravel应用程序结构解释
- javaScript中Math内置对象基本方法入门
- 微信小游戏开发实战16:如何对小游戏进行优化
- 如何有效的进行项目管理(决不能少了这5点)
- 笔记本没有无线网络连接如何解决
- 显示桌面图标不见了如何恢复