http://blog.csdn.net/changong28/article/details/39717209

*******************************************

一般而言使用log4j时,只要把log4j.properties放置到类路劲下就可以了,这是log4j会自动从类路径下去寻找然后初始化,然手好多时候,我需要将log4j.properties的文件放置到自己需要的地方,一种是需要是log4j配置对象初始化,例如:

  1. import com.foo.Bar;
  2. import org.apache.log4j.Logger;
  3. import org.apache.log4j.PropertyConfigurator;
  4. public class MyApp {
  5. static Logger logger = Logger.getLogger(MyApp.class.getName());
  6. public static void main(String[] args) {
  7. // 配置文件初始化
  8. PropertyConfigurator.configure(args[0]);
  9. logger.info("Entering application.");
  10. Bar bar = new Bar();
  11. bar.doIt();
  12. logger.info("Exiting application.");
  13. }
  14. }

上述args[0]传入log4j配置文件路径。

但如上述这样初始化的话感觉有点繁琐,有没有其他更简洁的办法吗?答案是有,因为一般一个Java工程一个log4j 配置文件就够了,所以我们在运行java主程序的时候通过附加参数可以实现该功能,如下:

  1. -Dlog4j.configuration=file:{path to file}

eg:   -Dlog4j.configuration=file:./log4j.properties

上述中file:前缀是一定要的,千万别忘了加上,{path to file}当然是log4j配置文件了,完整例子如下:

  1. set APP_CLASSPATH=.;%APP_HOME%/lib/*
  2. set APP_PARAMS=-Dapp.path.home="%APP_HOME%" -Dlog4j.configuration="file:%APP_HOME%\config\log4j.properties"
  3. "%JAVA_HOME%\bin\java" %APP_PARAMS% -cp "%APP_CLASSPATH%" "com.changong28.maven.HelloWorld"

参考:http://logging.apache.org/log4j/1.2/manual.html

使用命令参数方式指定log4j配置文件的更多相关文章

  1. 在单元测试中指定log4j的配置文件

    在开发过程中,我们会使用到log4j来输出日志,我们希望在单元测试的时候,只看到部分日志信息,或者定义日志输出的级别.   这个时候手工指定log4j的配置文件:   具体做法如下: 定义类如下: i ...

  2. linux dd命令参数及用法详解---用指定大小的块拷贝一个文件(也可整盘备份)

    linux dd命令参数及用法详解---用指定大小的块拷贝一个文件 日期:2010-06-14 点击:3830 来源: 未知 分享至:            linux dd命令使用详解 dd 的主要 ...

  3. WordCount_命令行运行时指定参数

    WordCountApp命令行运行时指定参数 1.修改之前的WordCountApp.java的代码 package cmd; import java.net.URI; import org.apac ...

  4. log4j配置文件详解---转

    使用步骤注意: 1. 从http://logging.apache.org/log4j/1.2/ 下载文件 2. 在src目录下加入log4j.properties,将jar包放入build -pat ...

  5. 烂泥:【转】rsync命令参数详解

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. rsync安装完毕后,我们可以通过rsync –help查看rysnc命令的使用.如下: 有关rsync的命令格式,在此我们就不多介绍了.如果有想了解的 ...

  6. springmvc 项目完整示例06 日志–log4j 参数详细解析 log4j如何配置

    Log4j由三个重要的组件构成: 日志信息的优先级 日志信息的输出目的地 日志信息的输出格式 日志信息的优先级从高到低有ERROR.WARN. INFO.DEBUG,分别用来指定这条日志信息的重要程度 ...

  7. log4j - 配置文件

    Log4J的配置文件(Configuration File)就是用来设置记录器的级别.存放器和布局的,它可接key=value格式的设置或xml格式的设置信息. 通过配置,可以创建出Log4J的运行环 ...

  8. Linux mail 命令参数

    linux mail 命令参数: 使用mail发邮件时,必须先将sendmail服务启动. mail –s “邮件主题” –c”抄送地址” –b “密送地址” -- -f 发送人邮件地址 –F 发件人 ...

  9. Log4J配置文件说明

    Log4J的配置文件(Configuration File)就是用来设置记录器的级别.存放器和布局的,它可接key=value格式的设置或xml格式的设置信息.通过配置,可以创建出Log4J的运行环境 ...

随机推荐

  1. nginx安装后出现502 Bad Gateway 错误解决办法

    1. 打开php-fpm.conf 2.将lisen值修改为 listen = 127.0.0.1:9000 并保存 3.重启服务/etc/init.d/php-fpm restart

  2. Unity-Animator深入系列---fullPathHash和shortNameHash

    回到 Animator深入系列总目录 Unity5对状态哈希做了改进,拆分成了fullPathHash和shortNameHash,那么就来看看他们有什么区别 测试结果: fullPathHash支持 ...

  3. ISO C90 forbids mixed declarations and code 警告

    编译的时候经常会遇到   ISO C90 forbids mixed declarations and code 警告百度了一下,知道是如下原因 : 变量定义之前任何一条非变量定义的语句(注意:语句是 ...

  4. Android系统中 setprop,getprop,watchprops命令的使用

    如:在frameworks/opt/net/ims/src/java/com/android/ims/ImsManager.java if (SystemProperties.get("pe ...

  5. readDouble

    readDouble是从一个文件中读取double类型的数据

  6. 2016 Al-Baath University Training Camp Contest-1 D

    Description X is well known artist, no one knows the secrete behind the beautiful paintings of X exc ...

  7. 成为Java顶尖高手要看的11本书

    成为Java顶尖高手要看的11本书 学习的最好途径就是看书",这是我自己学习并且小有了一定的积累之后的第一体会.个人认为看书有两点好处: 1.能出版出来的书一定是经过反复的思考.雕琢和审核的 ...

  8. Java 常用排序算法/程序员必须掌握的 8大排序算法

    Java 常用排序算法/程序员必须掌握的 8大排序算法 分类: 1)插入排序(直接插入排序.希尔排序) 2)交换排序(冒泡排序.快速排序) 3)选择排序(直接选择排序.堆排序) 4)归并排序 5)分配 ...

  9. Eclipse新建工程编译R cannot be resolved to a variable问题

    Eclipse新建工程编译R cannot be resolved to a variable问题 新建工程编译提示R cannot be resolved to a variable 图1 然后打开 ...

  10. 在JSP页面中输出字符" * "组成的金字塔

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...