使用Lombok的Eclipse - 搜索getter和setter的用法

48
我正在使用带有Lombok插件的Eclipse。生成器和设置器被正确地生成,但它们在类主体中不可见(这是整个目的,我知道)。然而,由于这个原因,我无法从类内部执行对getter或setter用法的搜索。所以如果我想检查一个字段实际上在哪里被设置了特定值,我必须执行字符串搜索来查找getter名称,这很慢,可能会导致错误结果(例如在另一个类中具有相同名称的字段)。
在Eclipse中是否有一种方法可以查找Lombok生成方法的getter/setter用法?

1
Eclipse lombok插件应该允许这样做(IntelliJ可以)。 - Adam Siemion
@AdamSiemion 我也希望能找到它,但我没找到,所以才问的。 - Dariusz
https://github.com/rzwitserloot/lombok/issues/1358 - Robert Smit
3个回答

71
您可以使用大纲视图: 显示Getter / Setter的大纲视图 在大纲视图中右键单击方法,然后使用“打开调用层次结构”。
另一种方法是右键单击注释(例如@Setter),然后在其上使用“打开调用层次结构”,但某些注释(如@Data)可能无法正常工作。

10
谢谢你的回答,对于提纲来说是有效的。这很好,但不是非常方便。它不能用于快速提纲的ctrl-o功能,这本来会更好。 - Dariusz
键盘快捷键Ctrl + Shift + G在大纲视图中也适用,当您选择其中一种方法后。 - blackr1234
只有在字段上标注@Getter@Setter才能生效。如果将注释放在类上(为所有字段创建getter和setter),则“打开调用层次结构”将无法正常工作。 我正在从IntelliJ迁移到Eclipse,但我错过了这个功能:/ 有其他方法吗? - Renan Ceratto
@RenanCeratto,你用的是哪个版本的Eclipse?我需要在2020-12和2023-06两个版本上都做这个技巧。关于IntelliJ IDEA,据我所知,它也有同样的限制 - 参见https://dev59.com/aaPia4cB1Zd3GeqPxFmQ。 - Petr Bodnár
@PetrBodnár 抱歉,我不记得Eclipse的版本了,我已经回到IntelliJ IDEA 2023.1.3(Ultimate Edition)。使用IntelliJ,只需按Ctrl+单击字段,使用查找工具即可实现此功能。 - Renan Ceratto
@RenanCeratto,与Eclipse中的Ctrl+Shift+G不同,IDEA中的Ctrl+Click确实可以找到字段及其访问器方法的用法。所以很遗憾IDEA在调用层次视图中不支持这个功能。 - Petr Bodnár

0

除了在概述中找到方法,然后右键单击并查找引用之外,目前没有其他选项。对于由lombok提供的构造函数也是如此。


1
你的回答似乎与被接受的答案相反。 - Elikill58

-4
如果在大纲选项卡中看不到getter和setter,请重新启动IDE。在将jar导入IDE之前,运行jar文件并将IDE.exe文件指定给它。

您所提及的是 lombok jar 包,可从 https://projectlombok.org/download 下载。有关更清晰的安装细节,请参阅 https://projectlombok.org/setup/eclipse。 - mekazu

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接