問題描述: 項目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