錯誤重現
我的機器上安裝了 maven 3.5.0,在 eclipse 中創建 maven 項目。pom.xml配置如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>zhangchao</groupId> <artifactId>testVertx</artifactId> <version>0.0.1-SNAPSHOT</version> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> </properties> <dependencies> <!-- 一些依賴 --> </dependencies> </project>
在項目上鼠標右鍵 -> Maven -> Update Project … -> OK 代碼中一直給出錯誤提示,內容如下:Lambda expressions are allowed only at source level 1.8 or above.
解決方法
更改 pom.xml 配置,有兩條關鍵語句:
<maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target>
把這兩條語句加入 properties 標簽對中,更改后的代碼如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>zhangchao</groupId> <artifactId>testVertx</artifactId> <version>0.0.1-SNAPSHOT</version> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> </properties> <dependencies> <!-- 一些依賴 --> </dependencies> </project>
重新在項目上鼠標右鍵 -> Maven -> Update Project … -> OK 。
如果Update Project還不管用,就鼠標右鍵 -> Run as -> Maven build… -> Goals 中輸入 clean compile -> RUN
這個時候應該就不會有錯誤提示了。