java - 与 "Address in use: JVM_Bind"相关的一些问题

标签 java eclipse windows-xp port

我正在用 Java 编写套接字程序,有时会出现此错误。我有一些问题:

1) 我使用 Eclipse 运行我的套接字应用程序,最后单击“终止”,但有时仍然会出现该错误。为什么?

2)有没有办法以编程方式关闭端口?像这样:

if(isPortOpen(portNumber)) {
   closePort(portNumber);
}
//// Run my app here

3)有什么办法可以避免这个错误(在编程或操作系统中)?

最佳答案

套接字选项 SO_REUSEADDR 可以帮助重新使用以前使用过的端口(程序在几秒钟前终止)。

简单地创建一个未连接的套接字,使用

socket.setReuseAddress(true);

先连接socket再连接。

请参阅javadocthis SO post

关于java - 与 "Address in use: JVM_Bind"相关的一些问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6134433/

相关文章:

php - PHPUnit 命令行工具中的控制字符有什么问题?

java - 使用从文本文件中删除所有数字和字母数字字符

java - 从 SPARQL 查询中仅获取 "#"之后的名称

扩展类后的 java.lang.VerifyError

eclipse - 成员变量前缀错误地添加到方法名称

Excel货币快捷方式产生€符号

c# - 注册表观察程序C#实现RegistryKeyChangeEvent

java - java读写数据报错

java - 生成值和键来填充 map ,以及我应该使用哪种类型的 map

java - eclipse RCP : Why is the view missing when running as a Product?