我在控制台上遇到异常:

java.lang.Exception: Port 8083 already in use.

如何解决此异常?如果我将获得使用8083端口的服务,则可以停止该服务,这样就可以解决此问题。

谢谢你的帮助!

最佳答案



该错误意味着另一个应用程序已经绑定(bind)了该端口,因此您将无法使用它。通常,这意味着服务器正在运行(或正在退出),但特定端口仍处于打开状态。当您尝试关闭一台服务器并启动新版本时,通常会出现此错误,但是当新服务器启动时,第一台服务器并没有完全关闭。您需要找到有问题的服务器,并且可能必须使用kill -9或其他方式将其杀死。

找出哪个应用程序打开了端口的一个好工具是lsof。这至少应该在大多数Unixes(Linux)和MacOSX下都可以使用。

lsof -i :8083
lsof用于设置系统上的打开文件,但-i选项用于Internet地址:
-i [i]   This option selects the listing of files any of whose Internet
         address matches the address specified in i.
        [46][protocol][@hostname|hostaddr][:service|port]

09-11 17:35