You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为什么我的IntelliJ原生Java项目无法识别@NotNull、@Nullable注解

问题成因

@NotNull不属于JDK内置的标准注解,需要引入第三方注解依赖包才能使用,你当前项目没有引入对应依赖,因此IDEA会报找不到符号的错误。

解决方案

你可以直接用IDEA自带的JetBrains注解包快速解决,操作步骤如下:

  • 把光标移到报错的@NotNull位置,按下Alt + Enter调出快速修复菜单
  • 选择「Add 'annotations' to classpath」选项
  • 在弹出的确认窗口点击OK,IDEA会自动将自带的JetBrains注解包添加到项目依赖中
  • 等待IDEA同步完成后,代码顶部会自动生成导入语句import org.jetbrains.annotations.NotNull;,注解即可正常使用

如果需要手动引入其他来源的NotNull注解,操作步骤如下:

  • 提前下载对应注解包的jar文件,常用的可选来源包括Jakarta Validation注解包、Lombok包等
  • 按下Ctrl + Alt + Shift + S打开项目结构设置界面,依次选择「Modules」→ 你当前的项目模块 →「Dependencies」标签
  • 点击标签页下方的「+」号,选择「JARs or directories」,选中你下载的jar包导入
  • 勾选导入的jar包前的复选框确认生效,点击OK保存设置,然后在代码中导入对应包路径的NotNull注解即可使用

注意事项

不同来源的NotNull注解包路径存在差异,不要导错:

  • JetBrains官方注解包对应路径:org.jetbrains.annotations.NotNull
  • Jakarta Validation 3.0+版本对应路径:jakarta.validation.constraints.NotNull
  • 旧版Javax Validation对应路径:javax.validation.constraints.NotNull
  • Lombok提供的非空注解拼写不同,对应路径:lombok.NonNull

内容的提问来源于stack exchange,提问作者joEy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 02:45:07