引起原因:java.net.BindException:地址已在使用中:bind

时间:2018-09-25 06:43:28

标签: windows spring-boot process taskkill

我试图通过单击运行方式-> Spring Boot应用程序来运行Spring Boot应用程序。我收到错误消息:

  

原因:java.net.BindException:已使用的地址:bind

使用netstat命令时,我看到以下内容,没有进程ID:

netstat -na | find "8080"

TCP    0.0.0.0:8080   0.0.0.0:0    LISTENING

TCP    [::]:8080      [::]:0       LISTENING

注意-我正在 windows 计算机

上运行代码

如何杀死这些进程?

4 个答案:

答案 0 :(得分:0)

尝试使用命令lsof -i,它应该列出pid之间的网络连接。 甚至更好的lsof -i:8080

答案 1 :(得分:0)

您可以通过在server.port=4567中提供application.properties之类的内容来更改应用程序的端口号。

OR

您可以按照http://www.codeman.in/blog/windows-kill-process-by-port-number-157中所述的步骤来杀死在端口号上运行的进程:-

enter image description here

答案 2 :(得分:0)

最有可能正在使用“ 8080”,要么结束任务/关闭应用程序,要么简单地更改Spring引导所使用的默认端口。您可以通过多种方式实现,application.properties是其中之一。

答案 3 :(得分:0)

try {
            SpringApplication.run(Application.class, args);
        } catch     (org.springframework.boot.web.server.PortInUseException e) {
//Runtime.exec("pkil")..
//or
SpringApplication.run(Application.class, otherargs);
//SpringApplication.run(Application.class, new String[]{"--server.port=8444"});
//when invoked recursively it is a port rebalancer for port usage among port pool with server as from client for startup stage via application restarts within many busy ports which are used before or without querying.

}