在Eclipse中,我得到了这个错误:

run:
     [java] Error creating the server socket.
     [java] Oct 04, 2012 5:31:38 PM cascadas.ace.AceFactory bootstrap
     [java] SEVERE: Failed to create world : java.net.BindException: Address already in use: JVM_Bind
     [java] Java Result: -1
BUILD SUCCESSFUL
Total time: 10 seconds

我不知道为什么现在出现了,但几个小时前它运行得很好。我需要重新启动我的机器吗?我该怎么查到底呢?感谢您的建议和建议。


当前回答

如果你知道进程运行的端口是什么,你可以输入: lsof我:<端口>。

例如,lsof -i:8080列出运行在端口8080上的进程(pid)。

然后使用kill <pid>终止进程

其他回答

端口已经被一些其他进程使用,@Diego Pino说你可以在unix上使用lsof来定位进程并杀死相应的进程,如果你在windows上使用netstat -ano来获得所有进程的pid和每个人获得的端口。搜索你的目标港口并杀死。

如果可能的话,重启你的机器就很简单了:)

在Windows CMD行中,输入以下命令找出绑定端口上连接的进程ID:

C:> netstat -a -o

显示所有连接

-o show进程标识符

然后终止该过程。

如果你知道进程运行的端口是什么,你可以输入: lsof我:<端口>。

例如,lsof -i:8080列出运行在端口8080上的进程(pid)。

然后使用kill <pid>终止进程

您在同一端口上运行另一个进程。

你可以尝试杀死一个运行在你的任务管理器中的java.exe服务- ps确保你没有杀死eclipse,因为它也被列为java.exe。如果其他方法都不起作用,重新启动机器无论如何都会修复它。看起来你没有关闭之前测试中的套接字。希望这能有所帮助。

是的,您有另一个进程绑定到相同的端口。

当我遇到JVM_BIND错误时,Windows Sysinternals中的TCPView(仅限Windows)是我最喜欢的应用程序。它显示了哪个进程正在侦听哪个端口。它还提供了一个方便的上下文菜单来终止进程或关闭妨碍进程的连接。