在Intellij idea中新建了一个Maven项目,运行时报错如下:Error : java 不支持发行版本xxx

#解决
假如本地运行用的是JDK12,报错应该是项目编译配置使用的Java版本不对,需要检查一下项目及环境使用的Java编译版本配置。 需要修改Intellij四个地方
根据官方文档
| Code        | Descriotion                                 | LANGUAGE_LEVEL |
| ----------- | ------------------------------------------- | -------------- |
| 1.3         | Plain old Java                              | JDK_1_3        |
| 1.4         | ‘assert‘ keyword                            | JDK_1_4        |
| 5           | ‘enum‘ keyword, generics, autoboxing etc.   | JDK_1_5        |
| 6           | @Override in interfaces                     | JDK_1_6        |
| 7           | Diamonds, ARM, multi-catch etc.             | JDK_1_7        |
| 8           | Lambdas, type annotations etc.              | JDK_1_8        |
| 9           | Modules, private methods in interfaces etc. | JDK_1_9        |
| 10          | Local variable type inference               | JDK_10         |
| 11          | Local variable syntax for lambda parameters | JDK_11         |
| 12          | No new language features                    | JDK_12         |
| 12(Preview) | Switch expressions                          | JDK_12_PREVIEW |
| 13          | No new language features                    | JDK_13         |
| 13(Preview) | Switch expressions, text blocks             | JDK_13_PREVIEW |
| X           | Experimental features                       | JDK_X          |
在Intellij中点击“File” -->“Project Structure”,看一下“Project”和“Module”栏目中Java版本是否与本地一致:

在Intellij中点击“File” -->“Project Structure”,看一下“Project”和“Module”栏目中Java版本是否与本地一致:

点击“Settings”-->“Bulid, Execution,Deployment”-->“Java Compiler”,Target bytecode version设为本地Java版本。(可以在Default Settings中把Project bytecode version 一劳永逸地配置成本地Java版本)

如果上述配置完,还有问题。
可能jdk的版本可能会被maven项目覆盖了。于是在 pom.xml 文件中,我们指定编译器的jdk版本。
在maven的文件下配置,如果只希望在单个工程中运行,则在单个工程对应maven文件中配置,如果需要全局,则在全局的maven文件中配置

<plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.8.0</version>
        <configuration> <!--让编译器使用本地的13版本jdk-->
            <source>13</source>
            <target>13</target>
        </configuration>
    </plugin>
把上面这一串代码直接丢到以下代码块中就可以(没有build模块就自己写)。在复制时要注意 maven-compiler-plugin 的版本,如果版本不同就在 version 里修改。
<build>
	<plugins>
		...
	</plugins>
</build>
如果还有问题,则可能工程内还有其他配置了运行环境的文件,如xml、iml文件
原文:https://www.cnblogs.com/code906/p/12668050.html