发布时间:2022-12-14 文章分类:编程知识 投稿人:李佳 字号: 默认 | | 超大 打印

如果Maven项目用原生Maven命令能够正常打包构建,但在IDEA中无法识别。

解决方案:

1. 首先重新加载下Maven项目,可能重新加载下就好了,因为很多时候在IDEA导入Maven项目是被中断了,中断原因可能是人为的,也可能是因为网络等问题导致。

2. 如果提示 POM 有误(误报),甚至构建时直接报错 'com/intellij/lang/properties/charset/Native2AsciiCharsetProvider has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 52.0'等,这种情况一般是由于IDEA的bug导致。
目前已知在某些情况下(比如使用了 tiles-maven-plugin 插件),"Maven导入程序"(一个独立的进程)会用到IDEA本身的一些类,而默认情况下"Maven导入程序"使用的JDK并非IDEA的启动JDK,而是项目JDK,又因为新版IDEA编译所使用的JDK版本一般高于项目JDK版本,从而导致
IDEA无法正常识别Maven项目。
该问题的解决方案是:将"Maven导入程序"所使用的JDK版本更改为IDEA启动所使用的版本一致即可(如果没有安装对应版本的JDK建议新安装一个,而不要直接用IDEA自带的)。
错误示例:新版IDEA无法解析Maven项目无法解析pom文件

解决参考:新版IDEA无法解析Maven项目无法解析pom文件