一、问题描述
在idea运行Java代码时,偶尔会遇到“无效的目标发行版11” 或 “原发行版11, 需要目标发行版11”的异常。具体原因是笔者的编译环境为jdk8, 而运行环境为11. 查阅诸多资料,以及自身的探索,现附上最全版解决方法(某些设置可能不影响)
二 、解决方法
思路:将原发行版与目标发行版jdk调成一致, 这里以jdk8为例(所有的设置完毕以后要点击Apply才生效)
1、打开File-->Project Structrue
1.1 修改project设置(将SDK和Language level均修改为jdk1.8对应版本)
1.2将所有module模块Sources下语言均设置为1.8版本,我这里只有一个module,所以只修改一个
1.3将所有module模块Dependencies下SDK均设置为1.8版本
二、打开File-->Settings2.1打开Build,Execution,Deployment-->Complier, 将Project bytecode version 修改为8。 再将所有模块右边Target bytecode version均修改为8
如果问题还没解决,下面步骤也许执行(maven环境)
2.2打开File-->Settings-->Build,Execution,Deployment-->Maven
2.2.1 打开Importing, 将JDK for importer修改为1.8
2.2.2打开Runner 将JRE修改为1.8
如果还没解决问题,可以点击右侧的的Maven项,将Profiles下面方框对号取消,如下图:
以上步骤,应该可以解决大部分“无效的目标发行版11”的问题,如对以上步骤有疑问,欢迎留言,有其他技术方面的探讨,欢迎交流,共同进步。