Я работаю в java.net.BindException: адрес уже используется (сбой привязки) в приложении сокет сервер-клиент
Я пытаюсь узнать о сокетах Java, используя учебник Youtube в качестве справочного материала. Мой код, кажется, соответствует всему в видео (кроме имен переменных), но при попытке запустить сервер, а затем клиентские сокеты, я получаю:
Exception in thread "main" java.net.BindException: Address already in use (Bind failed)
Я даже пытался распечатать локальный порт, чтобы убедиться, что я подключен к правильному доступному порту, но ничего не работает. Есть ли какие-либо документы, которые я могу изучить, чтобы решить эту проблему? или какое-либо руководство?
Server.java
public class serverSocket {
public static void main(String args[]) throws IOException{
String message, serverResponse;
ServerSocket serverSocket = new ServerSocket(56789);
System.out.print(serverSocket.getLocalPort());
Socket acceptClientRequestSocket = serverSocket.accept();
Scanner serverScanner = new Scanner(acceptClientRequestSocket.getInputStream());
message = serverScanner.next();
System.out.println(message);
serverResponse = message.toUpperCase();
PrintStream newMessage = new PrintStream(acceptClientRequestSocket.getOutputStream());
newMessage.println(serverResponse);
}
}
Client.java
public class clientSocket {
public static void main(String args[]) throws UnknownHostException, IOException {
String message,outputMessage;
Scanner clientInput = new Scanner(System.in);
Socket clientSocket = new Socket("localhost",56789);
Scanner incomingStream = new Scanner(clientSocket.getInputStream());
System.out.println("Enter a message");
message = clientInput.next();
PrintStream printClientStream= new PrintStream(clientSocket.getOutputStream());
printClientStream.println(message);
outputMessage = incomingStream.next();
System.out.println(outputMessage);
}
}
Есть ли какая-либо документация, на которую я могу посмотреть, чтобы решить эту проблему? или какое-либо руководство?