IntelliJ IDEA 不支持 Lambda?

IntelliJ IDEA not supporting Lambda?

我正在学习使用 lambda 表达式的教程。

Spring Boot - Bookmarks

但是 IntelliJ 总是说:cannot resolve method(<lambda expression>)

我需要检查什么?

this.accountRepository.findByUsername(userId).orElseThrow(() -> new UserNotFoundException(userId));

您的 IntelliJ 或您的项目似乎未设置为使用 Java 8.

  1. 打开项目结构
  2. 查看项目设置 | ProjectProject SDK的值应该是1.8
  3. 查看平台设置 | 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>