【问题标题】:Changing Java annotation parameter default更改 Java 注释参数默认值
【发布时间】:2021-01-23 09:29:21
【问题描述】:

我使用了一个库,该库提供带有布尔参数parameter 的注释@LibraryAnnotation。库的作者将默认设置为true

不幸的是,在我几乎所有的用例中,我更喜欢带有parameter = false 的注释。为了达到预期的行为,我每次都使用@LibraryAnnotation(parameter=false) 而不是@LibraryAnnotation。这很容易出错,因为很容易忘记设置参数。

我想知道是否有办法通过更改@LibraryAnnotation 参数的默认值或定义行为类似于@LibraryAnnotation(parameter=false) 但不需要设置参数的自定义注释来简化事情。

(在这种特殊情况下,库是 lombok,但该问题可能与任何库提供的参数化注释相关。更新:Lombok 通过 lombok.config 文件提供 default parameter configuration,但是我仍然对通用解决方案感兴趣。)

【问题讨论】:

  • 您是否尝试定义自己的注释?这将是要走的路,我想......

标签: java annotations lombok


【解决方案1】:

您可以定义自己的注释并改用它。比如:

@LibraryAnnotation(parameter = false)
public @interface MyLibraryAnnotationFalse {
}

【讨论】:

  • 听起来不错。当@LibraryAnnotation 对目标ElementType.ANNOTATION_TYPE 无效时,有什么方法可以处理这种情况?
猜你喜欢
  • 1970-01-01
  • 2014-09-01
  • 2023-01-14
  • 2018-05-26
  • 1970-01-01
  • 1970-01-01
  • 2021-12-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多