gpt4 book ai didi

java - Eclipse 希望实现不存在的方法

转载 作者:行者123 更新时间:2023-12-02 02:22:21 25 4
gpt4 key购买 nike

我有一个应用程序,我一直在尝试使用 Java 8 的 RMI。我在 Windows 10 上使用 eclipse Neon.3,它提示我没有实现不存在的接口(interface)的方法。在尝试缩小单独问题的范围时,我注释掉了接口(interface)的一个抽象方法。

注释掉一个抽象方法后,将接口(interface)导出为jar文件;然后将该 jar 文件添加到将实现该接口(interface)的服务器应用程序的构建路径中。

界面:

package accessService;

import java.rmi.Remote;
import java.rmi.RemoteException;
import java.util.HashMap;

public interface ApplicationAccessService extends Remote{

//public void connectClient(Long[] clientId) throws RemoteException;
public HashMap<String, Long> getClientConnections() throws RemoteException;
public HashMap<String, Integer> getServerConnections() throws RemoteException;

}

实现类:

package iap.util;

import java.rmi.RemoteException;
import java.util.HashMap;

import accessService.ApplicationAccessService;

public class RemoteIAP implements ApplicationAccessService{

private final static HashMap<String, Integer> SERVERS = new HashMap<>();
private final static HashMap<String, Long> CLIENTS = new HashMap<>();

public RemoteIAP(){ }

//methods used by RMI interface--------------------------------------
@Override
public HashMap<String, Integer> getServerConnections() throws RemoteException {
return SERVERS;
}

@Override
public HashMap<String, Long> getClientConnections() throws RemoteException {
return CLIENTS;
}
//end RMI methods-------------------------------------------------------
}

错误:

The type RemoteIAP must implement the inherited abstract method ApplicationAccessService.connectClient(Long[])

在我看来,Eclipse 在注释掉相关方法之前以某种方式维护了工件。重新启动 eclipse 并重新启动我的电脑并没有改变这种行为。我不知道这是否是java的问题,是我使用eclipse中的上下文菜单将接口(interface)添加到构建路径的方式,还是其他问题?

最佳答案

有时,ide 可以读取旧的已编译的 .class 文件,但在构建操作后它不会被新文件替换。

更改类名并重新构建。

关于java - Eclipse 希望实现不存在的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48327903/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com