将日志文件保存在 .properties 文件的相对路径中

Posted

技术标签:

【中文标题】将日志文件保存在 .properties 文件的相对路径中【英文标题】:Save log file in a relative path from .properties file 【发布时间】:2013-09-23 11:00:02 【问题描述】:

我有一个 .properties 文件,它定义了保存我的日志文件的路径。问题很简单,但我正在努力寻找解决方案。我的目录如下所示:

   -MyBundle
     --configuration
           config.properties
     --log
           logfile.log
     --src

如何在config.properties 文件中定义“logfile”的路径?

提前致谢。

【问题讨论】:

看起来您没有写入该目录的权限。更改目录的权限或将软件安装在您拥有权限的其他文件夹中:) 【参考方案1】:

logFile.log 相对于"config.properties" 位于"../log/logFile.log"

.. 表示法引用包含. 的目录,即当前目录。

http://en.wikipedia.org/wiki/Path_(computing)

【讨论】:

你有权限写文件到这个目录吗?【参考方案2】:

如果你的包作为一个单独的进程执行,假设它是一个 .jar 文件; 考虑到“当前工作目录”,您应该访问相对路径。

我想在你的情况下,应该在配置文件中设置“log/logFile.log”。

另外,我要指出你可以通过检查系统属性user.dir来了解你的“当前工作目录”

System.getProperty("user.dir")

【讨论】:

以上是关于将日志文件保存在 .properties 文件的相对路径中的主要内容,如果未能解决你的问题,请参考以下文章

log4j如何动态改变存放路径

如何将 GIF 保存到我的相册?

将 django 请求日志保存在文件中

JMeter—监听器

将程序日志保存到文本文件中

log4j实现每一个线程保存一个日志文件