Eclipse在内容辅助变量初始化时添加@NotNull注释
我使用Hibernate,因此在实体属性上使用javax.validation.constraints.NotNull注释。 以下是我的用例:首先,我编写以下代码:Eclipse在内容辅助变量初始化时添加@NotNull注释,eclipse,Eclipse,我使用Hibernate,因此在实体属性上使用javax.validation.constraints.NotNull注释。 以下是我的用例:首先,我编写以下代码: myEntity.getName() 然后我使用Eclipse内容辅助“ctrl+1”来获取下拉选项“将语句分配给新的局部变量” 现在,如果getName()属性用javax@NotNull注释,那么结果变量也用@NotNull注释,如下所示: @NotNull String name = myEntity.getName();
myEntity.getName()
然后我使用Eclipse内容辅助“ctrl+1”来获取下拉选项“将语句分配给新的局部变量”
现在,如果getName()属性用javax@NotNull注释,那么结果变量也用@NotNull注释,如下所示:
@NotNull
String name = myEntity.getName();
我不想在我的变量上使用此注释。如何关闭它?您可能正在使用一个非常旧的eclipse版本,这在Eclipse4.7(=EclipseOxygen)中已经修复,请参阅
当前版本为4.10(=Eclipse2018-12),可从下载您可能正在使用一个非常旧的Eclipse版本,这在Eclipse4.7(=EclipseOxy)中已经修复,请参阅
当前版本为4.10(=Eclipse 2018-12),可从下载,如果您有一个
javax.validation.constraints.NotNull的变体,该变体在其@Target
列表中包含类型,则该注释被视为该类型的一部分
Eclipse最初建议使用与右侧完全相同的类型声明新的局部变量
按TAB
可以导航到变量类型的位置,并从合适类型的列表中进行选择。按Enter键选择这些类型中的任何一种(包括原始字符串)都会导致注释被删除。如果您有一个变量javax.validation.constraints.NotNull
在其@Target
列表中包含TYPE\u USE
,则注释被视为该类型的一部分
Eclipse最初建议使用与右侧完全相同的类型声明新的局部变量
按TAB
可以导航到变量类型的位置,并从合适类型的列表中进行选择。按Enter键选择这些类型中的任何一种(包括原始字符串)都会导致注释被删除。我在链接的bug中使用了Eclipse Oxygen.3a版本(4.7.3a),它们讨论了不同的注释。因此,要么只是针对特定的注释修复了此问题,而不是针对一般的注释修复了此问题,要么是有一个关闭此问题的设置,或者是其他问题……对不起,我假设您启用了基于注释的空值分析,并且您的@NotNull被配置为注释之一。如果您这样做,eclipse将理解它,并且知道局部变量不需要它。即使对于局部变量,当前也始终保留未知类型注释。如果您认为应该更改,请在提交一个bug。因此,如果我理解正确,禁用基于注释的空分析将是防止内容辅助上的注释的一种方法?不幸的是,基于注释的空分析已关闭。因此,我所经历的行为似乎是有意的。好的,我将提交一个bug,因为我认为我有一些很好的理由说明这些注释可能会产生误导。不启用它应该会阻止itI在您链接的bug中使用Eclipse Oxygen.3a版本(4.7.3a)。他们讨论了不同的注释。因此,要么只是针对特定的注释修复了此问题,而不是针对一般的注释修复了此问题,要么是有一个关闭此问题的设置,或者是其他问题……对不起,我假设您启用了基于注释的空值分析,并且您的@NotNull被配置为注释之一。如果您这样做,eclipse将理解它,并且知道局部变量不需要它。即使对于局部变量,当前也始终保留未知类型注释。如果您认为应该更改,请在提交一个bug。因此,如果我理解正确,禁用基于注释的空分析将是防止内容辅助上的注释的一种方法?不幸的是,基于注释的空分析已关闭。因此,我所经历的行为似乎是有意的。好的,我将提交一个bug,因为我认为我有一些很好的理由来解释为什么这些注释会产生误导。启用它应该不会阻止它