Получение `java.net.BindException` при вызове `java.net.DatagramSocket.connect(java.net.SocketAddress)`JAVA

Программисты JAVA общаются здесь
Anonymous
Получение `java.net.BindException` при вызове `java.net.DatagramSocket.connect(java.net.SocketAddress)`

Сообщение Anonymous »

Я только что увидел следующее исключение в одном из наших CI-тестов, и оно для меня очень странное:

Код: Выделить всё

Caused by: java.net.BindException: Address already in use
at java.base/sun.nio.ch.Net.connect0(Native Method)
at java.base/sun.nio.ch.Net.connect(Net.java:579)
at java.base/sun.nio.ch.DatagramChannelImpl.connect(DatagramChannelImpl.java:1249)
at java.base/sun.nio.ch.DatagramSocketAdaptor.connectInternal(DatagramSocketAdaptor.java:91)
at java.base/sun.nio.ch.DatagramSocketAdaptor.connect(DatagramSocketAdaptor.java:128)
at java.base/java.net.DatagramSocket.connect(DatagramSocket.java:505)
(Просто показывает соответствующую часть; кадр ниже — это наш код, и он пытается подключиться к тому же адресу/порту, что и тысячи предыдущих и последующих тестов, и все они прошли успешно без проблем)
Единственное, что я нашел при поиске в Google, это https://bugs.openjdk.org/browse/JDK-8303695, который не имеет особой активности...
Операционная система – macOS-15.5-arm64-arm-64bit, а JVM – 64-разрядная серверная виртуальная машина OpenJDK Microsoft-9911841 (сборка 17.0.12+7-LTS, смешанный режим, общий доступ)
Следует ли мне списать это на какую-то ошибку ОС/Java, или есть нетривиальная вероятность того, что мы делаем что-то неправильно (например, невозможность закрытия сокетов или что-то в этом роде?)

Вернуться в «JAVA»