Eclipse 枚举中的自动完成?

Sol*_*une 5 java eclipse enums completion

编辑:原来这是Eclipse 和枚举/数组初始值设定项的一个长期存在的错误,这真的很不幸。


在 Eclipse 中,我发现我无法访问枚举内部的任何类型的代码完成。这是一个 WIP,当然,我正在使用的代码片段。

enum PlayerState implements State<Player> {

NORMAL(){

    @Override
    public void enter(Player player){

    }

    @Override
    public void update(Player player){

    }

},

JUMP_START(){

    Timer jumpTimer = new Timer();
    public void enter(Player player){
        jumpTimer.set(1);
    }

    public void update(Player player){

    }

},

GLOBAL_STATE(){

    @Override
    public void update(Player player){
    }
};

@Override
public void enter(Player player) {
}

@Override
public void exit(Player player) {
}

@Override
public boolean onMessage(Player player, Telegram telegram) {
    return false;
}
Run Code Online (Sandbox Code Playgroud)

}

所以在这段代码中,我没有完成“player.”或“jumpTimer.”。需要注意的是,我正在使用GDX-AI库来管理状态机,它建议将状态放入枚举中,就像我上面所说的那样。请注意,我能够在 IntelliJ 中完成。我试过在首选项/Java/编辑器/内容辅助/高级部分启用“Java 建议”,但这不起作用,重新启动 IDE 也无济于事。

有任何想法吗?

编辑:为了确认,这只是一个片段,整个代码确实可以编译。到目前为止,它的工作方式没有任何问题,据我所知;Eclipse 没有抛出任何错误,所以没问题。目前唯一的问题是代码完成。

哦,还有,奇怪的是 Eclipse 可以告诉我代码有什么问题(即从状态到 Player 类在状态机上执行“changeState()”会出现语法错误,因为我没有提供参数) . 所以,有一定程度的代码检查,但没有代码提示?我不知道...