一篇让你彻底解决java:无效的目标发行版: 11或其它版本

时间:2024-11-07 07:16:46

1.问题及原因

平时工作学习中我们在使用idea开发中经常会遇到以下问题,java:“无效的目标发行版: 11、14”冲突。如下图:

出现问题的原因是:你clone 别人的代码。你的jdk版本为java8 或者更低,但是别人的JDK属于java11 或者java14。导致项目jdk和本地jdk版本不一致,所以会出现以下的问题,那应该如何解决呢?

2.解决

一般需要三个步骤就能彻底解决这个问题。部分同学可能需要四个步骤。

2.1步骤1

打开文件下的Project Structure 如下图:

把红色框中的改为你目前的jdk版本,我现在为jdk8,所以改为1.8

2.2步骤2

继续打开 Modules 模块修改每个项目中的 language level.切记是每个项目。如果只有那只就修改一个就行。我这里只有1个项目,所以只对这个项目进行修改。

2.3步骤3

一定要注意,很多网上的教程到这里就没有了,但是你还是会发现继续无效的目标发行版: 11这个问题,那么这个时候怎么办呢??

打开文件下的settings,继续修改如下图:

 

到这里一般情况下重新编译项目然后启动可以正常启动。如果还报刚刚那个错误,请继续往下看

2.4步骤4

打开项目的文件

 找的你的版本号改成8,没有的话就手动创建一个

最后找到这行,把里面的configuration内容替换成下面格式

 3.成功

 

4.后续问题

当你修改完之后你会发现项目有问题,比如有些高版本项目中给对象判空处理直接.isEmpty()

,但是在Java 9之前,您需要使用()而不是.isEmpty(),等以下问题,所以当你修改完之后就可以放心使用了。