天下没有收费的bug

天下没有收费的bug

起因:我的电脑炸了,吸取教训,以后重要的东西千万不要存在C盘,特别是我们 IT 行业的,代码和文档都是一点一点积累的经验。突然没了,总感觉少了点啥,平时我的代码都是放在D盘,但是很多文档放在C盘,导致此次丢失了很多文档,心疼~

电脑炸了,运维同事给我换了新的固态硬盘,C盘的东西是保不住了,还好其他盘符的东西还在。所以很多软件要重装也是在所难免的,其中重装 idea 的时候就遇到了比较棘手的问题。


如图,重装了idea之后,启动项目,就报错如下,一开始觉得肯定是小问题,对着 maven 一顿操作,各种清缓存,删包重新下载,换依赖,换版本,换仓库,能做的基本上是都做了。

解决 Delegate IDE build/run actions to Maven  编译两次的问题-LMLPHP

最后还是妥协了,百度了一个办法,就是在 Setting-maven-running 中勾选上 Delegate IDE build/run actions to Maven  

解决 Delegate IDE build/run actions to Maven  编译两次的问题-LMLPHP

勾选上这个之后确实能运行了,真的神奇,但是运行了多次之后发现了一个问题,就是每次运行之前,会先执行 maven 的打包功能,简直就是反人类

解决 Delegate IDE build/run actions to Maven  编译两次的问题-LMLPHP

正常情况下,有编译文件就能运行了,没必要打 jar 包,还是百度看到了这个问题,只要勾选上 Delegate IDE build/run actions to Maven  就会出现这个问题,但是现在又不能取消勾选,否则项目就启动不起来,又回到了第一步。


后面去百度了各种方法,比较有说服力的是说 idea 2020.1 版本问题,我看了一下,我的确实是这个版本。但是想来想去也是不应该,总感觉这有点甩锅型了,治根不治本,

其他的问题,也是百度不到啥了,估计这个是个天坑,不少人也因为这个换了版本,或者继续将就下去。


思考:这到底是谁的问题?idea 的问题?还是 maven 的问题?或者两者的问题?

maven 依赖确实下载下来了,idea 中看着是把依赖都加载进去了,但是运行的时候报错在不到 jar 包又是怎么回事?到这里,脑子中大致有了个想法,难道 idea 假死?看着像加载进来了,但实际又没有加载?这种情况,第一个想到的就是缓存问题,然后又是百度一顿操作,各种清缓存,最后还是失败了。

没有办法,去看看 idea 是怎么样和 maven 做关联的,怎么样在 idea 中能执行 maven 命令的 。

百度了半天,很显然,答案都是有关 idea 怎么配置 maven 的,很显然这也不是我要的答案。

偶然间翻到一个命令 mvn idea:idea , 这个命令意思是重构一下,但是我后面去特意查了这个命令,也没有找到想要的答案,但是我在 idea 的命令行中执行这个命令,很神奇,它给我下载了很多类似 mvaen 的依赖。

很可惜,当时比较忙,忘了这个命令是出自哪里了,一直到后面我翻历史记录也是找不到了,这篇博客也是隔了一个月才写,9月份我是真的忙,但是这个一直是个天坑,我一直印象深刻,所以今天记录一下。


解决办法:在 idea 命令行中输入 mvn idea:idea 重构一下

解决 Delegate IDE build/run actions to Maven  编译两次的问题-LMLPHP

对于这个天坑,希望大家能早日脱坑。

10-08 04:00