Ant配合Log4j不能输出log文件

今天部署代码到 linux 服务器,用ant 试运行一下,发现没有log文件输出, 但是在Eclipse中却没问题.

然后在本地DOS命令行里运行一下ant, 还是没有log文件. 随即baidu + google找到一个方法

1.  一种比较麻烦的方法

先设置环境变量

set ANT_OPTS=-Dlog4j.debug -Dlog4j.configuration=file:///D:/CVS/myProject/classes/log4j.properties

再加参数-listener 运行ant

ant -listener org.apache.tools.ant.listener.Log4jListener  target名字

以后直接运行 "ant target名字" 就可以了.

2. 上面的方法太麻烦, 而且是将ant的所有输出都打到log里了. 所以就想在程序中强制写死读取log4j.properties文件.

ant运行却报了一个错, [java] java.io.FileNotFoundException: file:\D:\CVS\myProject\lib\axis-ant.jar!\log4j.properties

奇怪! 怎么会报这里错误? 把axis-ant.jar删掉! 再试一次, OK, log文件出来了!

打开axis-ant.jar, 发现里面有个log4j.properties文件, 呵呵, 看来找到问题了.

# Set root category priority to INFO and its only appender to CONSOLE.
log4j.rootCategory=INFO, CONSOLE
#log4j.rootCategory=INFO, CONSOLE, LOGFILE

这就是前3行,后面的不用看也明白了, 它只向CONSOLE输出.

ant编译的时候在内存中把jar都解开了? 

log4j怎么就鬼使神差的读取了axis-ant.jar的log4j.properties ?

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值