问题描述: 项目JDK版本不对
如果项目JDK版本不兼容,在编译或者启动项目的时候抛出如下异常提示信息:
Error:(29, 34) java: -source 1.7 中不支持 lambda 表达式
(请使用 -source 8 或更高版本以启用 lambda 表达式)
第一行的提示是告诉我们,项目中使用了jdk8才有的Lambda表达式,第二行提示我们更换jdk配置。
解决方案:设置项目的JDK版本
由于IDEA中配置jdk的地方比较多,容易丢三落四,小编这里记录下来,供各位童鞋参考。本文所使用的IDEA版本是 IntelliJ IDEA 2019.3.2 (Ultimate Edition)。
1,通过快捷键"ctrl+shift+alt+s" 打开project settings配置面板,检查项目的jdk和SDKs配置。
1.1 检查project 下的project SDK和Project language level是否为项目需要的jdk。
1.2 检查SDKs设置。
1.3 检查Modules-->Sources-->Language level
设置的版本不能比项目的jdk版本高。我电脑配置了jdk 7和jdk8,由于项目是Spring Boot项目,所以,选择jdk 8版本。如果项目使用了jdk7,那就设置成jdk7的。
1.4确定modules-->Dependencies-->Module SDK配置的jdk是否正确。
2, 按下 "ctrl + alt + s " 打开settings配置面板,设置JDK版本
检查 runner -->JRE配置是否正确
VM Options 设置:
-server -Xms1024m -Xmx2048m -XX:MaxNewSize=1024m -XX:PermSize=1024M -XX:MaxPermSize=1024m -Dfile.encoding=UTF-8
3 , 确定Java compiler 的 Target bytecode version 是否选中项目需要的jdk版本:
4, 设置 maven settings的jdk版本。
这个方法请大家参考如何设置Maven,不再赘述。
5, 设置pom.xml中jdk版本。
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>2.3.1.RELEASE</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.0</version> <configuration> <source>1.8</source> <target>1.8</target> <encoding>UTF-8</encoding> </configuration> </plugin>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持,多多点赞。
Reference