Address already in use: JVM_Bind
- означает, что ваша операционная система не является закрытой розеткой после предыдущего использования.Он закрывается по тайм-ауту около 30-180 секунд.
Я действительно не знаю, как это сделать в Java, но в C
коде это можно сделать так до вызова системной функции bind
:
int yes = 1;
setsockopt(sockfd, SOL_SOCKET, SO_REUSEADDR, &yes, sizeof(int));
Это значит: установить флаг (опция) SO_REUSEADDR
в sockfd
сокет.
В Java должен существовать соответствующий механизм для того же.