在我的机器(Windows 10)中,有两个版本的 Java,Java 1.8(JRE 和 JDK)和 Java 10(JRE 和 JDK)。
以前 如果 我将我的 Eclipse 设置为:
- Java 编译器(JDK 合规性) :1.8
- Java 构建路径(JRE 系统库) :1.8
那么如果 我使用以下 Spring 代码
import javax.annotation.PostConstruct;
...
...
...
@PostConstruct
...
...
一切 正常。完全没有错误。
但是,如果我将 Eclipse 设置为:
- Java 编译器(JDK 合规性) :10
- Java 构建路径(JRE 系统库) :10
现在, import
语句 抛出一条错误消息:
The import javax.annotation.PostConstruct cannot be resolved
并且此 错误也发生 在 @PreDestroy
注释上。
为什么会这样? Java 10 发生了什么?如果我仍然想保留 Java 编译器和 JRE 系统库版本到 Java 10,如何解决这个问题?
谢谢你。
原文由 xcode 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以尝试将注释依赖项添加到 pom.xml,以便它们可用于 Spring: