为什么在Eclipse中禁用“ Generate Getters and Setters ...”快捷方式?

Y  *_*  z 5 java eclipse shortcut getter-setter

我正在使用Eclipse 4.9.0。

我有一堆字段,我想在某个文件中为其生成getter和setter。但是,该选项未出现在上下文菜单中(alt + shift + S),如果我进入菜单栏“源”>“生成吸气剂和设置器...”,该选项将显示为灰色(禁用)。

在同一项目的另一个文件中,该选项可用,因此我的IDE没问题。

使事情变得奇怪的是,当我将鼠标悬停在变量上并且提出解决不使用这些变量的建议时,其中之一是创建getter和setter的选项,选择该选项确实可以启动对话,但仅适用于一个一次。它确实以这种方式成功创建了getter和setter。

样例代码:

@Entity
public class sampleClass extends anotherClass {

  @Id
  private String sampleVar1;
  private String sampleVar2;
  private Date sampleVar3;
  private int sampleVar4;
Run Code Online (Sandbox Code Playgroud)

是什么导致吸气剂/塞特剂产生被禁用?

San*_*ath 0

我认为问题在于你的光标位置。我猜你没有将鼠标指针放在正确的位置。如果将光标放在类括号之外的任何位置,则可能无法生成它。确保鼠标指针位于变量赋值旁边。让我知道这是否有帮助。