Tomcat 由于本地计算机上的两个应用程序 运行,地址已在使用错误
Tomcat address already in use error due to two applications running on local machine
我的 Java 应用程序出现此错误:
ERROR o.a.catalina.core.StandardService – Failed to start connector [Connector[HTTP/1.1-9004]]
org.apache.catalina.LifecycleException: Failed to start component [Connector[HTTP/1.1-9004]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:167)
at org.apache.catalina.core.StandardService.addConnector(StandardService.java:225)
at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.addPreviouslyRemovedConnectors(TomcatEmbeddedServletContainer.java:265)
at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.start(TomcatEmbeddedServletContainer.java:208)
at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.startEmbeddedServletContainer(EmbeddedWebApplicationContext.java:297)
at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.finishRefresh(EmbeddedWebApplicationContext.java:145)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:546)
at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:693)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:360)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:303)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1118)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1107)
at ie.aviva.app.TomcatApp.main(TomcatApp.java:31)
Caused by: org.apache.catalina.LifecycleException: Protocol handler start failed
at org.apache.catalina.connector.Connector.startInternal(Connector.java:1020)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
... 13 common frames omitted
Caused by: java.net.BindException: Address already in use: bind
at sun.nio.ch.Net.bind0(Native Method)
at sun.nio.ch.Net.bind(Net.java:461)
at sun.nio.ch.Net.bind(Net.java:453)
at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:222)
at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:85)
at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:210)
at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:1150)
at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:591)
at org.apache.catalina.connector.Connector.startInternal(Connector.java:1018)
... 14 common frames omitted
我猜我的两个应用程序正试图在同一个端口上启动 Tomcat,但我对 tomcat 没有任何了解或经验。还假设它以某种方式嵌入到 SpringBoot 中。我如何 investigate/resolve 这个?
您可以在application.properties
中设置服务器端口
server.port=8081
或application.yml
:
server:
port: 8081
两个文件之一可能存在于 src/main/resources
中,如果没有,您可以创建一个。
我假设您的机器已经具有您可能不需要的 8080 端口 运行。因此,要终止该连接,请遵循以下两个简单的步骤(如果您想为您的应用程序使用 8080):
通过在您的终端上输入以下内容获取 8080 端口的 PID:netstat -n -a -o | grep '8080'
杀死进程释放8080端口:taskkill /F /PID 1234
(假设PID为1234)
我的 Java 应用程序出现此错误:
ERROR o.a.catalina.core.StandardService – Failed to start connector [Connector[HTTP/1.1-9004]] org.apache.catalina.LifecycleException: Failed to start component [Connector[HTTP/1.1-9004]] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:167) at org.apache.catalina.core.StandardService.addConnector(StandardService.java:225) at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.addPreviouslyRemovedConnectors(TomcatEmbeddedServletContainer.java:265) at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer.start(TomcatEmbeddedServletContainer.java:208) at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.startEmbeddedServletContainer(EmbeddedWebApplicationContext.java:297) at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.finishRefresh(EmbeddedWebApplicationContext.java:145) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:546) at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:693) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:360) at org.springframework.boot.SpringApplication.run(SpringApplication.java:303) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1118) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1107) at ie.aviva.app.TomcatApp.main(TomcatApp.java:31) Caused by: org.apache.catalina.LifecycleException: Protocol handler start failed at org.apache.catalina.connector.Connector.startInternal(Connector.java:1020) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) ... 13 common frames omitted Caused by: java.net.BindException: Address already in use: bind at sun.nio.ch.Net.bind0(Native Method) at sun.nio.ch.Net.bind(Net.java:461) at sun.nio.ch.Net.bind(Net.java:453) at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:222) at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:85) at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:210) at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:1150) at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:591) at org.apache.catalina.connector.Connector.startInternal(Connector.java:1018) ... 14 common frames omitted
我猜我的两个应用程序正试图在同一个端口上启动 Tomcat,但我对 tomcat 没有任何了解或经验。还假设它以某种方式嵌入到 SpringBoot 中。我如何 investigate/resolve 这个?
您可以在application.properties
server.port=8081
或application.yml
:
server:
port: 8081
两个文件之一可能存在于 src/main/resources
中,如果没有,您可以创建一个。
我假设您的机器已经具有您可能不需要的 8080 端口 运行。因此,要终止该连接,请遵循以下两个简单的步骤(如果您想为您的应用程序使用 8080):
通过在您的终端上输入以下内容获取 8080 端口的 PID:netstat -n -a -o | grep '8080'
杀死进程释放8080端口:taskkill /F /PID 1234
(假设PID为1234)