第100篇原创,纪念被 bug 折磨的两个晚上!!🙄🙄🙄
周三晚写好了一个小 demo,想测试下 jarmode 这个东西,结果…… 运行的时候一直报这个错误
点击视频感受下痛苦 哈哈哈😂 可怜下自己 🐷
先说下一般的操作,一看到上面这个 bug, 我们第一反应都是再重新导一次包就好了。
我也是这么做的,上面两个按钮都点烂了…… 还是在报错。我也上网搜了下,发现还有人说还有可能是网络问题啥的……
我看了下时间,11点了,想了下还是关机先,明天开机再看看就好了,(一般这种奇奇怪怪的 bug ,关掉软件,或者重启后都会恢复正常的)
一觉醒来,周四了,美滋滋的赖个床,心里盘算着晚上回来开电脑刚好可以写文。😄
下班回来后,开开心心的打开,运行,结果还是报错。这时候我开始意识到事情的不对劲…… 😱(如意算盘么得了😨)
凭借着多年被 bug 折腾的经验,我开始认真看 IDEA 了,发现编辑器中显示也正常,包也正确,于是,我直接用 maven 命令去编译这个项目,发现成功编译!
我乐开了花,立刻点击这个启动键 。
结果还是报错!
我索性点击 重新 build 这个项目,发现还是不行……
点击重新加载项目,还是不行……🙃
真是气人,无奈之下,我只能祭出大招了。清掉所有缓存
经过漫长的等待,项目又重新加载了,我立刻点击启动键并静静注视着日志栏,心都提到嗓子眼了!
它依旧静静地给我吐出了 不存在 这几个字。我的天,这是要把我逼疯吗 !
“我吐了……“
随后,我又重新振作起来:我,4ye 怎么能倒在你这小小的 bug 上!
给自己打完气后,我开始冷静地分析起来了。
凭借过往的经验,我先换掉了 Springboot 版本,发现之前正常的版本现在都不能用了。这就有点蹊跷了,我赶紧去我的 maven 仓库看看,确保下里面的文件是正常的,而且没下载漏了(以前在公司,有一次刚好在跑项目,下载包到本地,中间突然断电,那个电脑直接重启了,然后 maven 仓库中的文件变成不完整,也是报奇怪的bug。)
看到这里正常后,我就更纳闷了,还能检查哪里呢…… 🐖
(马后炮来说,之前我直接用 mvn 命令编译成功了,那说明这些都没啥问题的呀🐖)
我找了下以前正常运行的项目,再次运行,发现是正常的!
我想着,难道这次建的这个 demo 有毒,我再建一个新的试试。
结果,还是报错,我的天,就正常的引入 Springboot 而已,其他代码都没写的!
无奈之下,我对比起了 IDEA 的项目文件!
发现在 .idea
的 libraries
文件夹下,有具体的 jar 包位置
但是上图 红框中的东西,和我正常跑起来的项目中是不同的!
终于,找到了不同点,但是新问题来了,我总不能一个个去替换呀!
我想了下,看看 IDEA 的 log 文件有啥错误没~
打开后,看到里面满满的 STDERR 输出,我就知道找对地方了。
org.jaxen.UnresolvableException: No Such Function matches
搜了下这个异常,发现有一个帅小伙 遇到了,天呐,简直就是救星!
我兴奋地点进去查看,结果人家说的是 插件异常 。我看了下我的 IDEA,都没有提示我这个东西。
到了这里,我已经开始郁闷了。
经历了几次大起大落,我已经非常疲惫了,只想安静地躺着刷视频。
好好地让自己主演了一番 无能狂怒 以及练习了几十秒的优美 C 语言后,我内心也舒服多了,甚至想睡觉了,此时也 11 点多了,但是一想到这样周五还发不了原创,那怎么和小伙伴们交代呢,只能好好肝一下了🙃
我打开了我的 maven 仓库,看了下已经 1.3 G 大小了!
我心里想着,难道是 IDEA 抽风了,不想加载这个仓库了。😂(已经神志不清了我,什么都想试试了😂)
我索性建了个新仓库(幸好没有冲动清掉旧仓库),并在配置文件中将地址指到新仓库上。
然后修改下 IDEA 中 maven 的这个配置,把 Override 选项勾掉,用配置文件中配置的新仓库地址就好了。
然后神奇的一幕出现了,在我勾掉 Override 后,点击启动时,项目居然成功运行起来了!!
我的天,我兴奋地点到这里,发现 jar 包的地址都正常了!
我的天,但是我想着我不是配置到新仓库了吗,这里怎么还是旧的?
难道之前在 IDEA 中,就因为这个
Override
仓库的地址不知道怎么回事坏了,然后就一直打印那个$MAVEN_REPOSITORY$
,现在被我重新点了之后,就又恢复正常了吗!😄
终于,问题到了这里终于结束了!!过程有点长,被折磨得神志不清,最后随便尝试下居然解决了😂 (就差卸了重装了!😭 好在解决了!!)
也给小伙伴们提供了一个思路:
如果你的
.idea
的libraries
文件夹下 ,具体的 jar 包位置没有正确显示,还是显示这个 M A V E N R E P O S I T O R Y MAVEN_REPOSITORY MAVENREPOSITORY 变量,不妨重新点点勾选Override
仓库✔
还有 如果你通过 mvn 命令可以正常编译,运行项目,那这个仓库应该是没问题的,问题可能出现在工具上!
唉,中间还跑去 IDEA 查查 issue ,真是绝了😂
https://www.jetbrains.com/help/idea/2020.2/troubleshooting-common-maven-issues.html#maven_start_problem
这次被 IDEA 被狠狠的上了一课后,我觉得我心态得到了很大的锻炼😂,下次遇到奇奇怪怪的 bug,应该能坚持久点才破防😂
算了 还是用老爹说过的话可靠点,要用魔法打败魔法