IntelliJ IDEA 不支持 Lambda?
IntelliJ IDEA not supporting Lambda?
我正在学习使用 lambda 表达式的教程。
但是 IntelliJ 总是说:cannot resolve method(<lambda expression>)
。
我需要检查什么?
this.accountRepository.findByUsername(userId).orElseThrow(() -> new UserNotFoundException(userId));
您的 IntelliJ 或您的项目似乎未设置为使用 Java 8.
- 打开项目结构
- 查看项目设置 | Project,Project SDK的值应该是1.8
- 查看平台设置 | SDK,应该有1.8列出
它应该看起来像这样:
您需要将 "Project language level" 更改为“8 - Lambdas、类型注释等”。您可以在 "Project Settings" -> "Project"
中找到此选项
除了上述答案外,还要查看您的 pom.xml 文件。源和目标应该是 1.8 或更高。例如
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
我正在学习使用 lambda 表达式的教程。
但是 IntelliJ 总是说:cannot resolve method(<lambda expression>)
。
我需要检查什么?
this.accountRepository.findByUsername(userId).orElseThrow(() -> new UserNotFoundException(userId));
您的 IntelliJ 或您的项目似乎未设置为使用 Java 8.
- 打开项目结构
- 查看项目设置 | Project,Project SDK的值应该是1.8
- 查看平台设置 | SDK,应该有1.8列出
它应该看起来像这样:
您需要将 "Project language level" 更改为“8 - Lambdas、类型注释等”。您可以在 "Project Settings" -> "Project"
中找到此选项除了上述答案外,还要查看您的 pom.xml 文件。源和目标应该是 1.8 或更高。例如
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>