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

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


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

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

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

正常情况下,有编译文件就能运行了,没必要打 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 编译两次的问题的更多相关文章

  1. 菜鸟调错(八)—— Maven编译错误:不兼容的类型的解决方案

    泛型在实际的工作中应用非常广泛,关于泛型就不在这里赘述了,感兴趣请戳<重新认识泛型>.项目中用到了如下的泛型: public <T> T query(String sql, R ...

  2. Build step 'Invoke top-level Maven targets' marked build as failure Finished解决

    最近用法 jenkins部署maven项目时候,突然出现Build step 'Invoke top-level Maven targets' marked build as failure Fini ...

  3. 使用Maven编译项目遇到——“maven编码gbk的不可映射字符”解决办法 ——转载

    一.问题描述 今天在MyEclipse中使用Maven编译项目源代码时,结果如下了如下的错误

  4. 转】使用Maven编译项目遇到——“maven编码gbk的不可映射字符”解决办法

    原博文出自于: http://www.cnblogs.com/xdp-gacl/p/4239006.html 感谢! 一.问题描述 今天在MyEclipse中使用Maven编译项目源代码时,结果如下了 ...

  5. maven编译常见错误解决方法整理

    程序包com.sun.xml.internal.ws.spi不存在 当maven项目里面有用到JDK内部的一些类,接口(如:com.sun.xml.internal.ws.spi.ProviderIm ...

  6. maven 编译出错Fatal error compiling: 无效的目标发行版: 1.8 -> [Help 1] 解决办法

    这几天在为公司项目搭建一个后台框架,使用的是eclipse-Mars自带的maven插件,在maven进行编译的时候,出现Fatal error compiling: 无效的目标发行版: 1.8 -& ...

  7. 解决Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project autotest_fchtgl: Compilation failure的方法

    在碰到maven install 发现报错 Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.2:comp ...

  8. maven编译开源项目报enforce错解决

    刚下载一个开源项目源码,用maven编译发现报错: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-enforcer-plu ...

  9. 解决 Failure to transfer * from http://repo1.maven.org/maven2

    解决 Failure to transfer * from http://repo1.maven.org/maven2 Failure to transfer org.apache.maven:mav ...

随机推荐

  1. 七:使用Session进行会话管理

    一.Session简单介绍 在WEB开发中,服务器可以为每个用户浏览器创建一个会话对象(session对象),注意:一个浏览器独占一个session对象(默认情况下).因此,在需要保存用户数据时,服务 ...

  2. String与Int类型的转换

    http://blog.sina.com.cn/s/blog_4f9d6b1001000bfo.html int -> String int i=12345; String s="&q ...

  3. Vivado实战—单周期CPU指令分析

    引言   不知道你是否和我有过同样的感受,<计算机组成原理>这门学科学起来如此的艰难:一节课下来,教室黑板上留下了满满的 "足迹",看上去也挺简单的,不就是 0 和 1 ...

  4. MySQL-SQL基础1

    p.p1 { margin: 0; font: 11px Menlo; background-color: rgba(128, 128, 128, 0.5); min-height: 13px } p ...

  5. 性能测试工具JMeter 基础(七)—— 测试元件: 逻辑控制器之if逻辑控制器

    逻辑控制器线程组指定了其取样器执行的逻辑条件.顺序,并且执行顺序是按照位置顺序从上至下执行的 if逻辑控制器(If Controller) 在逻辑控制器中可设置条件,当条件满足的时候才会被执行 一共有 ...

  6. Python - 面向对象编程 - self 参数

    为什么要讲 self 参数 class PoloBlog: def __init__(self): ... def say(self): ... 在类里面,所有实例方法都需要加 self 参数,且排在 ...

  7. 硕盟SM-A44|USB3.0转RJ45千兆网口转换器(TYPE A USB3.0 TO RJ45)

    硕盟SM-A44是一款USB3.0转RJ45千兆网口转换器.,转换USB端口到以太网端口.它让你投入低成本就可以轻松拥有千兆以太网.可将网络连接到台式机,笔记本电脑等等设备.硕盟 USB千兆网卡采用嵌 ...

  8. .Net性能调优-MemoryPool

    简单用法 //获取MemoryPool实例,实际返回了一个ArrayMemoryPool<T> MemoryPool<char> Pool = MemoryPool<ch ...

  9. PHP的Hash信息摘要扩展框架

    今天我们主要学习的是 PHP 中一些 Hash 散列加密相关的扩展函数的使用,而不是 Hash 算法,这种加密其实也只是一种更复杂一些的密钥算法,与 Hash 算法类似的是,我们输入的一串字符串,就像 ...

  10. PHP7兼容mysql_connect的方法

    在php7版本的时候,mysql_connect已经不再被支持了,本文将讲述在代码层面实现php7兼容mysql系列,mysql_connect等操作. PHP7不再兼容mysql系列函数,入mysq ...