delegate IDE buildrun actions actions to Maven

发布时间 2023-09-16 20:09:36作者: 哩个啷个波

IDEA中的maven项目下,可能出现这种情况:代码编辑器中无编译错误,通过maven 的clean 、compile、package进行各种操作也都没问题,但是单击绿色箭头运行(默认会先执行IDE本身的Build操作)却报:程序包xxx不存在

使用IDEA运行maven项目,代码没有编译错误运行却报错: "程序包xxx不存在"的问题,运行后报错:

img

但实际相关jar包都可以找到,找不到的包都可以ctrl+左键点击进去,同时也可以打包成功。但是IDEA就是无法运行。

实测两种方法可以解决

第一种:IDEA勾选"delegate IDE build/run actions actions to Maven",将编译托管给maven来解决。但是,每次项目运行时,会默认编译所有模块,效率奇差无比,启动非常慢。

File -> Settings -> Build,Execution,Deployment -> Build Tools -> Maven -> Runner

img


第二种:打开CMD命令行终端,切换到项目目录下,执行命令:mvn idea:idea ,如果有多个子项目则需要在每个项目目录下执行该命令。但一旦我改变pom.xml文件,增添新的依赖,就需要重新清缓存、执行mvn idea:idea命令。出现jar包找不到的问题,首先有可能是项目依赖中有些jar没有下载完整,而mvn idea:idea这个命令可以检查并继续下载未下载完整的依赖jar。在命令行输入mvn idea:idea ,然后 file–invalidate caches 重启就可以了

img

或者直接idea中

img

开启自动加载JAR包

如果仍然无法解决该问题,别慌,有可能是你的项目依赖有更新,而你的jdea没有开启自动加载更新后的依赖,也可能导致该问题的产生。开启自动加载JAR包的设置路径为:Intllij IDEA—>Preferences—>Build,Execution,Deployment—>Maven—>Importing

虽然这两种方法都能解决问题,但都是曲线救国,并没有解决真正的问题。实际上不用将项目的运行和构建交由maven,也不用执行mvn命令,主要与暗影应该还是IDEA的java compile的问题。
1.确保maven setting文件中的本地仓库配置正常

2.确保IDEA中maven的配置正常

3.确定IDEA中java compiler的version为1.8, 默认是1.5,保证version版本号均一致