如何使用Java 8 for JMH?

时间:2015-04-07 15:06:19

标签: java jmh

我使用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>

但我仍然得到同样的错误

1 个答案:

答案 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版本