我使用JMH编写了一个基准测试,在构建时我得到以下编译失败
lambda expressions are not supported in -source 1.6
[ERROR] (use -source 8 or higher to enable lambda expressions)
JAVA_HOME
设置为jdk1.8_40。
我尝试在jmh源文件夹jmh-core中的pom.xml
中更改目标和源:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<compilerVersion>1.8</compilerVersion>
<source>1.8</source>
<target>1.8</target>
<compilerArgument>-proc:none</compilerArgument>
</configuration>
</plugin>
但我仍然得到同样的错误
答案 0 :(得分:3)
您使用的是Mac吗?如果是这样,已经安装了java 6。我建议只从/ System / Library / Java / JavaVirtualMachines /中删除它。
无论如何,检查java -version以查看正在使用的jdk版本。然后在命令行上键入mvn -version。是否指向java 6?如果是这样,请将以下内容添加到〜/ .mavenrc:
export JAVA_HOME=/Library/Java/JavaVirtualMachines/{jdk-version}/Contents/Home
其中jdk-version将是您的java 8版本