java.net.BindException:地址已被使用:bind

java.net.BindException: Address already in use: bind

我像这样使用 glassfish 时遇到错误:java.net.BindException:地址已在使用:绑定,但我想我已经像这样更改了服务器的端口:

而且我想我已经将端口更改为 9999。但是没有任何效果。这是我电脑上使用的所有端口。

如何修复它?我看到服务器端口使用 8080。我认为它使端口依赖于端口 url。这是真的吗?如何解决?

正如错误消息明确指出:端口正在使用中。

netstat 输出显示存在到 BNI-PC:4848 的连接。这是 Glassfish 管理前端应该 运行 的端口,这意味着您的计算机上已经有一个 Glassfish 运行ning 实例。

另外,如果端口 8080 上有东西 运行ning,Glassfish 将不会以默认设置启动。

更改调试端口对您没有帮助,这与其他两个端口无关。

您应该关闭 Eclipse,然后通过任务管理器杀死所有剩余的 Java 进程以解决问题。

如果你真的想更改端口,请确保 Glassfish 不是 运行ning,在 ../glassfish4/glassfish/domains/domain1/config/ 中打开 domain.xml 并搜索 8080 以更改主 http 端口和搜索 4848 以更改 Glassfish Admin UI 端口。

提示:您可以使用 netstat -a -b(需要管理员权限)查看哪个进程正在使用这些端口。

我的解决方法是:打开任务管理器,找到java.exe进程,关闭,或者重启电脑

../glassfish4/glassfish/domains/domain1/config/ 中打开 domain.xml 并搜索 8080 并将其更改为主 http 端口。