spring - Spring可为空的注释生成未知的枚举常量警告
问题描述
在我的应用程序中,每当我将@Nullable
(从 导入org.springframework.lang.Nullable
)添加到任何字段时,都会收到构建警告:
警告:java:未知枚举常量 javax.annotation.meta.When.MAYBE 原因:javax.annotation.meta.When 的类文件未找到
@NonNull
和其他来自 spring 编译的空安全注释没有任何警告,因为它的实现没有 import import javax.annotation.meta.When
。
该应用程序运行良好,但警告只是烦人。我正在使用spring boot2.1.0
和java版本1.8.0_191
解决方案
此警告是由于javax.annotation.meta.When
枚举对您的项目运行时不可用(org.springframework.lang.Nullable
引用此枚举但它不会自动提供)引起。您需要引入 JSR305 实现来修复此警告。
Google find bugs repo 包含一个应该解决问题的 JSR305 实现: https ://mvnrepository.com/artifact/com.google.code.findbugs/jsr305
由于您使用的是 gradle,请将依赖项添加到您的build.gradle
脚本中:
...
dependencies {
...
// https://mvnrepository.com/artifact/com.google.code.findbugs/jsr305
implementation 'com.google.code.findbugs:jsr305:3.0.2'
...
}
...
做一个干净的构建,错误应该消失
如果您不想使用该com.google.code.findbugs
组的工件,您可以尝试此列表中的另一个:
https ://mvnrepository.com/search?q=JSR305
参考:
推荐阅读
- bosun - 如何在 Bosun 中将 epoch() 格式化为“20060102”或“yyyyMMdd”
- laravel - 如何在 403 Action Unathorized 之后重定向?
- authentication - 在 http 请求标头中发送证书 - c++
- javascript - 如何将用户从 datalist 下拉列表中选择的值插入到模板字符串中,以便在提交时作为消息显示给用户?
- javascript - 在 Angular 6 中重新加载组件的最佳方法
- apache-nifi - 如何从 JSON 流文件更新表
- google-apps-script - 如何检查公式速度或比较公式之间的速度
- python - pandas用plot画折线图,时间不连续,怎么让线连续?
- javascript - EmailJS 附件
- angular - Facebook 登录 SDK 重定向到 Facebook 应用程序。在哪里禁用这个?