我是靠谱客的博主 高大网络,最近开发中收集的这篇文章主要介绍Maven-eclipse中正常,jar包运行不正常问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

不想看我废话的直接检查配置文件,jar包情况下,放resources下不生效,要放java目录下

正文...

今天想在普通java项目上加个日志,Maven管理,配置文件放在了resources下,写完后eclipse内正常运行,日志正常输出在工作空间-项目目录下,打包jar,cmd java -jar,一气呵成......嗯?日志呢?

......

一顿内外搜索后没有什么好的答案(期间我搜索到了resources下的问题,也放到外面了但由于我用的logback包、log4j配置文件...汗...反正错过了这次机会),没事,上手撸它,debug模式走起...

debug追查到一个接口的实现类就是答案所在,替换class打印实现类,诡异的事情来了,eclipse下走的实现类a,jar下却走的实现类b...也好,只要再检查实现类b应该就能知道我的日志去哪了(突然想到,为什么第一个jar可以走到打印实现类那里...),然后我觉得jar的class让我替换的乱七八糟,于是我重新打了一个jar,更诡异的事情来了...

重新explore后,我发现打印实现类的那个类(C)不打印了,怎么回事?难道没走?于是我把C的class从jar包中删除...居然还能运行!W艹(一种植物)神了!各大论坛提问一圈,没有回应(没有大佬朋友可太难了555)。突然我想起了之前看到了个说Maven-resources的坑的帖子,于是我也一试...成了...

所以问题都明了了:1、不同的实现类:因为一个配置文件生效了,一个没生效;2、删除了class仍能运行:因为没有配置文件,不知道往哪里输出,所以可能没走到那个类就停了,所以没啥影响

总结:1、Maven普通java项目的resources真是坑啊;2、很多问题可能自己觉得描述清楚了,但大家并不知道你可能配置文件这种小错误都会犯,所以还是要细心,提高自己解决问题的能力;3、虽然耽误了些时间,但收获还挺多的(1、slf4j与log4j、logback关系、依赖;2、debug模式越玩越6了;3、会了替换class以后看哪个jar包不爽就盘他),所以有问题还是先尝试自己解决解决吧

最后

以上就是高大网络为你收集整理的Maven-eclipse中正常,jar包运行不正常问题的全部内容,希望文章能够帮你解决Maven-eclipse中正常,jar包运行不正常问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(45)

评论列表共有 0 条评论

立即
投稿
返回
顶部