输出日志到文件,我用的是相对路径,类似这种格式./xxx/test.log。结果我发现这个路径在linux下得到的不是相对class的路径,而是我启动程序的根目录,我没用使用类似tomcat这样的容器,就是直接用java -jar命令启动的程序,结果得到的路径却是我当前所在的路径,到底怎么能让它把日志放在classpath相对路径
关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
已采纳
log4j如何让日志文件输出到相对于classpath的相对路径
收起
- 写回答
- 好问题 0 提建议
- 关注问题
- 微信扫一扫点击复制链接分享
- 邀请回答
- 编辑 收藏 删除 结题
- 收藏 举报
1条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
yongskyq 2014-08-12 16:13关注在程序启动时获取classpath路径,用System.setProperty(log_path,classpath)把值设置到一个变量中,在log4j.property的日志文件中路径前面加上${log_path}/
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫点击复制链接分享评论按下Enter换行,Ctrl+Enter发表内容
报告相同问题?
提交
- 2021-11-05 08:18回答 1 已采纳 你的项目不执行install怎么可能到本地maven仓库,springboot的自动装配就是会去加载spring.facotories文件classpath路径就是你的包路径和你的resource路径
- 2019-11-09 19:09回答 2 已采纳 应该获取项目的发布路径,然后再拼接上 /WEB-INF/conf 。可以添加一个容器启动执行的 Servlet 获取项目的发布路径: ``` String dir = request.getS
- 2018-01-17 01:33回答 6 已采纳 那个就是要配置的文件名称啊
- 2020-12-20 12:05weixin_39623244的博客 方法一、 解决的办法自然是用相对路径代替绝对路径,其实log4j的FileAppender本身就有这样的机制,如:log4j.appender.logfile.File=${WORKDIR}/logs/app.log 其中“${WORKDIR}/”是个变量,会被System Property中的...
- 2011-12-19 11:20回答 2 已采纳 使用 classloader 的 getResources 方法,可以获取相应资源的URL,有了URL就可以转换成绝对路径了。 [code="java"]for(URL url: this.ge
- 2022-03-11 09:08回答 4 已采纳 如果你是用cmd运行的,那要先进去.java文件的上一级目录
- 2017-04-18 08:16回答 2 已采纳 classpath:只会到你的class路径中查找找文件; classpath*:不仅包含class路径,还包括jar文件中(class路径)进行查找。 1、src不是classpath, W
- 2021-01-12 13:43新知百略的博客 log4j1.1 简介Log4j是一个由Java编写可靠、灵活的日志框架,是Apache旗下的一个开源项目;现如今,Log4j已经被移植到了C、C++、Python等语言中,服务更多的Developer;使用Log4j,我们更加方便的记录了日志信息,它...
- 2019-05-18 09:24回答 1 已采纳 是因为缺乏 log4j.properties 配置文件,弄一个配置文件放在 classpath 路径下试试。
- 2022-02-07 11:53回答 5 已采纳 可以使用jd-gui进行查看,也可在Eclipse中添加jd-eclipse-site-1.0.0-RC2插件进行查看。CSDN上面都有完整的安装指导,自行查看即可。
- 2021-06-30 20:56回答 2 已采纳 这两没区别,classpath*:才有区别
- 2021-01-13 23:40季仪娅的博客 这篇文章写得比较全面,转过来,算是共享吧,同时感谢javaeye上的zengjinliang,呵呵方法一、 解决的办法自然是用相对路径代替绝对路径,其实log4j的FileAppender本身就有这样的机制,如:log4j.appender.logfile....
- 2020-08-27 15:28Log4j允许我们将日志信息输出到控制台、文件或其他目的地,并且可以通过配置文件来定制输出格式和级别。 为了指定日志输出的文件位置,我们需要进行以下步骤: 1. **定义WebAppRootKey**:在`web.xml`文件中,添加...
- 2014-06-06 15:09成者之剑的博客 方法一、 解决的办法自然是用相对路径代替绝对路径,其实log4j的FileAppender本身就有这样的机制,如:log4j.appender.logfile.File=${WORKDIR}/logs/app.log 其中“${WORKDIR}/”是个变量,会被System Property...
- 2023-07-26 00:05わたしわ的博客 随着软件系统的发展系统业务越来越多、逻辑越来越复杂、代码量越来越多,伴随着容易出现的...一般Java有以下日志框架可选择,日志实现:JUL、logback、log4j、log4j2,日志门面:JCL、slf4j。 日志框架:用于记录日志
- 2015-09-29 11:30汤姆维赛迪的博客 方法一、 解决的办法自然是用相对路径代替绝对路径,其实log4j的FileAppender本身就有这样的机制,如:log4j.appender.logfile.File=${WORKDIR}/logs/app.log 其中“${WORKDIR}/”是个变量,会被System Property中...
- 2019-11-17 20:55小阿杰的博客 一、log4j2介绍 log4j 2.x版本不再支持像1.x中的.properties后缀的文件配置方式,2.x版本配置文件后缀名只能为...配置文件的位置:log4j2默认会在classpath目录下寻找log4j2.xml、log4j.json、log4j.jsn等...
- 2024-09-26 17:08等风来不如迎风去的博客 -Dlog4j.configurationFile
- 2021-08-06 17:00网站推广优化yetaoaiueo的博客 Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出...
- 没有解决我的问题, 去提问