0

我一直试图在我的局域网中的两台计算机之间建立一个非常基本的连接。我查看了几个代码片段并从那里开始,但事情似乎在一开始就失败了:创建一个套接字。

我已经尝试连接到我正在执行代码的计算机(使用主机名“ Jeroen-DESKTOP”和“ Localhost”以及本地主机 IP“ 127.0.0.1”),并连接到我的笔记本电脑(使用“ Jeroen-LAPTOP”)。我已经尝试了这些端口66667598并在我的防火墙设置中打开了所有的 TCP 连接。

我使用的代码非常基本:

socket = new Socket("Jeroen-LAPTOP", 6666);
System.out.println(socket.getPort());

错误是:

java.net.ConnectException: Connection refused: connect
    at java.net.DualStackPlainSocketImpl.connect0(Native Method)
    at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
    at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
    at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
    at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
    at java.net.PlainSocketImpl.connect(Unknown Source)
    at java.net.SocksSocketImpl.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at java.net.Socket.connect(Unknown Source)
    at java.net.Socket.<init>(Unknown Source)
    at java.net.Socket.<init>(Unknown Source)
    at domain.Client.<init>(Client.java:13)
4

1 回答 1

1

在不知道你在做什么的情况下——

假设您在机器 A 上打开一个套接字并尝试使用机器 B 连接到它,那么 Java 中的典型场景将是。

机器A:

ServerSocket server = new ServerSocket(4444);
Socket connection = server.Accept();

机器 B:

Socket sock = new Socket(MACHINE-A-IP, 4444);

这将需要异常处理等以使其工作。您可以在此处查看示例; http://docs.oracle.com/javase/tutorial/networking/sockets/clientServer.html

关于您的评论 - 是的,您可以在本地运行它们。

于 2012-12-22T19:37:20.533 回答