0 0

log4j如何让日志文件输出到相对于classpath的相对路径0

输出日志到文件,我用的是相对路径,类似这种格式./xxx/test.log。结果我发现这个路径在linux下得到的不是相对class的路径,而是我启动程序的根目录,我没用使用类似tomcat这样的容器,就是直接用java -jar命令启动的程序,结果得到的路径却是我当前所在的路径,到底怎么能让它把日志放在classpath相对路径
2014年8月12日 10:22

1个答案 按时间排序 按投票排序

0 0

采纳的答案

在程序启动时获取classpath路径,用System.setProperty(log_path,classpath)把值设置到一个变量中,在log4j.property的日志文件中路径前面加上${log_path}/

2014年8月12日 16:13

相关推荐

    基于web项目log日志指定输出文件位置配置方法

    Log4j允许我们将日志信息输出到控制台、文件或其他目的地,并且可以通过配置文件来定制输出格式和级别。 为了指定日志输出的文件位置,我们需要进行以下步骤: 1. **定义WebAppRootKey**:在`web.xml`文件中,添加...

    errors code

    - **依赖管理**:确保log4j的版本与项目其他日志依赖(如slf4j)相兼容,避免因版本冲突导致的日志框架初始化失败。 #### 其他注意事项 在处理此类错误时,开发者还应关注以下几点: - **类路径(Classpath)检查**...

    JRubik-src-0.9.7.zip

    `derby.log`记录了Apache Derby数据库的运行日志,`log4j.properties`则控制JRubik应用的日志级别和输出格式,对于排查问题和监控系统状态至关重要。 6. **应用配置**:`jrubik.properties`和`boot.properties`是...

    hibernate至少所需的包

    Hibernate使用SLF4J作为日志抽象层,允许你在运行时选择不同的日志实现,如Log4j或Java Util Logging。你需要`slf4j-api-x.x.x.jar`以及具体的日志实现库,如`log4j-x.x.x.jar`。 5. **DOM4J**: Hibernate使用...

    java.inf,解决matlab安装错误

    4. **安装文件损坏**:下载的MATLAB安装文件可能在传输过程中受到损坏,导致安装时出错。重新下载完整无损的安装包可以解决这个问题。 5. **防火墙或安全软件阻止**:某些安全软件可能会阻止MATLAB的安装,因为它被...

    msnmlib-1.2.2-src.zip

    4. **ToUTF.java**:源代码文件,与ToUTF.class相对应,可能包含处理字符串编码的源代码,对于理解数据传输过程非常有帮助。 5. **.project**:这是Eclipse项目的配置文件,描述了项目的基本属性和构建设置。 6. *...

    c3p0-0.9.2.1.jar包

    7. **日志配置**: C3P0可以通过配置日志系统,如Log4j,记录连接池的运行情况,帮助开发者进行问题排查和性能分析。 总之,`c3p0-0.9.2.1.jar`是实现高效数据库连接管理的重要工具,它的使用涉及项目配置、代码集成...

    彻底卸载Oracle10g数据库详细操作步骤.pdf

    4. **安装路径**:安装路径避免包含中文字符,以减少问题发生的可能性。 5. **密码设置**:密码应避免使用纯数字,推荐使用字母组合以增强安全性。 通过以上详细的操作步骤,您可以有效地确保Oracle 10g数据库被...

    IBATIS参考文档

    - **commons-logging.jar & log4j-1.2.15.jar**:日志支持。 - **commons-dbcp.jar & commons-pool.jar**:DBCP数据源支持。 - **oscache-2.4.1.jar & jgroups-all.jar**:外部缓存框架支持。 - **cglib-nodep-...

    在线等待解决java tomcat 报错问题:java.lang.NoClassDefFoundError: javax/tools/StandardJavaF

    标题中的“java.lang.NoClassDefFoundError: javax/tools/StandardJavaFile”是一个常见的Java运行时错误,它表示在类路径中找不到某个类的定义。这个错误通常发生在试图执行包含特定类的代码,但该类在运行时环境中...

    新版Android开发教程.rar

    谷歌早在 2002 年就进入了移动领域,可是由于目前的手机操作系统企业和手机企业相对封闭,提高了 行业的进入门槛,移动互联网的发展远没有拥有统一标准的传统互联网发展迅速,此次推出的开源手机操 作 系统平台就是...

Global site tag (gtag.js) - Google Analytics