小编典典

Intellij - 无法使用较新的 Java 8 类 - 错误:“API 的使用记录为 @since 1.6+..”

all

我正在尝试java.lang.function.Function在我的 java 8 代码库中使用 a ,但我在 Intellij 中不断收到以下错误。

记录为 @since 1.6+ 的 API 的使用情况 此检查发现在其文档中具有 @since 标记的方法的所有使用情况。当在较新的 SDK
版本下作为生产的目标平台执行开发时,这可能很有用

我似乎有正确的项目和编译器设置

项目设置:(文件 - > 项目结构)

Project Settings -> Project -> Project SDK = Java 1.8
Project Settings -> Project -> Project Language Level = 8 - Lambdas, Type Annotations etc

编译器设置:(文件 - > 设置)

Build, Execution, Deployment -> Compiler -> Java Compiler -> Project Bytecode Version : 1.8
Build, Execution, Deployment -> Compiler -> Java Compiler -> Per module Bytecode Version -> Target Bytecode Version : 1.8

问题是什么?


阅读 254

收藏
2022-08-01

共1个答案

小编典典

根据 Bastien Jansen 的评论编辑了答案。

似乎还有另一个项目设置会影响编译器级别。这个问题的一个微妙迹象是当你的编译器开始抱怨源和目标 java 版本与你在编译代码时指定的不同时

Warning:java: source value 1.5 is obsolete and will be removed in a future release
Warning:java: target value 1.5 is obsolete and will be removed in a future release
Warning:java: To suppress warnings about obsolete options, use -Xlint:-options.

要摆脱这个,你需要打开

File -> Project Structure -> Project Settings -> Modules -> "Your Module Name" -> Sources -> Language Level

并将其更改为所需的级别,即 1.8 或项目默认语言级别

2022-08-01