maven编译报错 -source 1.5 中不支持 lambda(或diamond) 表达式,编码 UTF-8 的不可映射字符

时间:2022-02-24 11:01:12

在用maven编译项目是由于项目中用了jdk 1.8, 编译是报错  -source 1.5 中不支持 lambda 表达式。

错误原因:

  Maven Compiler 插件默认会加 -source 1.5 及 -target 1.5 参数来编译(估计是为了兼容一些比较老的 Linux 服务器操作系统,它们通常只有 JDK 5),而我们的代码里使用了 JDK 7/8 的语法。

解决方法:

 1 <project>
2 [...]
3 <build>
4 [...]
5 <plugins>
6 <plugin>
7 <groupId>org.apache.maven.plugins</groupId>
8 <artifactId>maven-compiler-plugin</artifactId>
9 <version>3.2</version>
10 <configuration>
11 <source>1.8</source>
12 <target>1.8</target>
<encoding>utf8</encoding>
13 </configuration> 14 </plugin> 15 </plugins> 16 [...] 17 </build> 18 [...] 19 </project>

转载地址:http://ju.outofmemory.cn/entry/155158